Software Test Automation Set Up for Verifying Website Changes
The Customer is a global advertising agency with over 100 offices and 10,000 employees in 80 countries.
The Customer wanted to set up test automation in order to speed up the testing process and reduce efforts spent on verifying changes introduced to their website.
ScienceSoft’s software test automation team took on the project. They set up the test automation process to reduce efforts spent on verifying the website’s UI and perform testing activities with an open-source framework (Pytest) that allowed executing automated tests based on Selenium to automatically check website pages for changes and reveal unplanned ones.
The test team configured the framework so that it enabled screenshotting the specified website pages, overlaying and comparing the screenshots to a reference in order to locate changes in the UI.
For each page, test engineers configured preferable screen resolution and, in case a particular page featured elements that required considerable time to load, specified an appropriate load time.
To reduce the testing time, ScienceSoft’s test team integrated the tool into the Customer’s CI/CD pipeline running on Azure DevOps, which enabled automatically triggering test execution at a set schedule.
The test results were presented in reports featuring the total number of the executed tests and the number of passed and failed tests presented in graphs and diagrams. The reports were automatically generated and distributed to the website support team at a set schedule.
As a result of employing the tool, the Customer experienced the following test process improvements:
- The number of UI problems reported by website users decreased by 30%.
- The time it took to recognize UI defects took no longer than 1 minute due to convenient visualization.
- The automatic distribution of daily test reports helped the website support team to reduce the time and effort it took to fix the reported UI defects.
Technologies and Tools
Selenium, Pytest, Allure Framework, Azure DevOps