In E-commerce and retail industry on-time delivery is critical for the success of business.
The goal of continuous testing is to provide fast and continuous feedback regarding the level of business risk in the latest build. Since testing begins early and is executed continuously, application risks are exposed soon after they are introduced. Development teams can then prevent those problems from progressing to the next stage of the SDLC.
Empower Task Automation
When teams are continuously executing a broad set of continuous tests throughout the SDLC, they amass metrics regarding the quality of the process as well as the state of the software. Automation is not just for testing and verification. Any repetitive heavy-processed manual work should be automated.Standardize the test environments so deployment is smooth across different environments and the results of the automated tests are reliable.We can execute the automation scripts in two different methods.
- From the tester’s stand alone systems.
- Running in the cloud and trigger the execution automatically in scheduled time with the help of continuous integration tool Jenkins.
In the first approach, the tester has to monitor the test execution and generate the report.In the second approach, the scripts can be executed in off hours and the report also will be generated.For the responsive design automation configuration to execute in stand-alone systems please refer the below blog: Responsive Design Automation Testing With Node.js, Webdriver.io And MochaTo execute the automation scripts, we have to configure browserstack api details in the configuration file.Configuration for browserstack api has to be updated based on the user’s access key provided by browserstack. We have to update the wdio.conf configuration file with the browserstack api credentials as follows:
This is the flow diagram representation of the implementation of continuous integration.
Jenkins is a continuous integration tool. The main motto of CI is to minimize integration problems and increase the speed of delivery.
With Jenkins , we integrated our webdriver.io automation scripts to make it run in different browsers and different OS with Browserstack. Once the job is scheduled, it will get triggered automatically and send us the .xml results.
Configuration of Job in Jenkins:
- Add a new job with freestyle project and configure the work-spaces.
- In build step, select the shell command; configure the shell command in the command input box.
- Click Save.
- Click “Build Now”.
- We can monitor the script log execution in console output. Once it is completed the build status will be shown as passed.
Configuration of Job in Jenkins:
Snap-shot of Job in list view:
Junit report output from CI – Jenkins:
With the help of continuous integration, by running automation tests against the code base on a frequent basis provides rapid notification as to any breakages in the code, particularly those in unchanged areas of the code. It is not so much the successful builds that are important, but the unsuccessful ones.
Increases confidence in the software
Continuous execution of automation tests, increases confidence that the software is of high quality. That’s not to say that the software meets the needs of the business (that’s a whole different discussion), but that as an absolute minimum it is of sufficient quality that it could be pushed into a UAT environment (or even a live environment).