Integration of Automation framework in Cloud
Published : August 6th, 2020
It was my first week working on an application project with a large financial company in the Bay Area. While working on this exciting project, one of the main points of concern revolved around ensuring that the application was of high quality and was user-friendly. In a recent survey, 22% of companies identified customer experience as the most exciting business opportunity and creating an outstanding CX was the key to boosting customer acquisition and retention. However, delivering a consistent customer experience at scale can be quite a challenge as we had to take into consideration offering a uniform experience on both desktop and mobile, as well as multiple browsers and OSs.
It is, therefore, extremely important to understand that quality is everybody’s responsibility, and the only way to assure a remarkable product is to involve all stakeholders at every level of decision-making as well as quality control. Read on to find out how we answered pivotal questions through the process of getting our application up and running.
The first and most important question on everyone’s mind was ‘which automation framework should be used?’. There were multiple options available but after discussions and analysis, the clear winner was Behaviour Driven Development (BDD). Our in-house industry experts built an automation framework (BDD) which leveraged Agile methodology to ensure the quality of the product in different stages. Some of the many features it provides are cross-browser testing, parallel execution, group execution, rich reporting, etc. All of which, worked perfectly with our application.
On to the next question, how do we involve stakeholders in the quality process effectively and seamlessly? This step was needed so that everyone involved in the lifecycle of the application took part in the quality process and took ownership of building customer experience.
The best way to do this was to bring our automation framework on the cloud, and here’s how we did it.
There are several open-source tools such as Selenium and providers like Sauce Labs, BrowserStack, etc. that can help run tests across multiple browser/OS versions. Of the lot, we adopted Sauce Labs as our solution provider to bring our automation strategy in the cloud. It is simple and there are effectively 3 steps to achieve it:
- Step 1: Maintain your automation code of any source control (like GitHub/ Bitbucket).
- Step 2: Build CI/CD pipeline with any pipeline toll (like Jenkins / GitLab runner /Bamboo).
- Step 3: Integrate Sauce Labs endpoint in a framework to route your request based on browser/OS/version to execute the task.
The advantages of using Sauce Labs to bring our automation framework on the cloud were plenty. Some of them are:
- Platform variety, the combination of browsers, simulators, and OS is extensive.
- Cloud-based VM farm which is always up and running. This is one of the biggest advantages since there is no hassle of setting up and maintaining infrastructure and you can purely concentrate on making your tests more effective.
- Testbed maintenance time is reduced to 50%.
- Automatic logs help to make the debugging more productive.
- Latest software and hardware updates that ensure applications work uninterrupted on the latest technologies.
- Visual feedback of the test execution is very effective with video and screenshots.
- Tunnelled connection for firewalled website so security on the cloud is taken care of.
- Sauce Connect for running on your local machine.
- Easy to Configure works seamlessly with BDD.
With the advantages that came with using Sauce Labs, we were able to ensure that each stakeholder had a say in the quality of the application. With its ability to let the user preview customer experience live as well as see a video of continuous improvement of the application, stakeholders can execute it on their own choice of the ecosystem and enjoy the experience in any stage of the application life cycle.Tags: agile development environment, analytical testing laboratories, Automation, quality assurance, software testing service, testing