Let’s look at various phases of the Automation Testing Life Cycle.
Automation Planning & Design
In this phase, Automation engineers work closely with the Development and Manual testing teams to derive an Automation Test Strategy, scope, etc.
- Automation test scope
- Automation tools
- Automation resources( Framework + Test Scripts )
- Milestones and Releases.
Automation Tool Selection
In this phase, various automation tools are evaluated and the best industry-standard tools and frameworks are selected that best suit the project. For Example,
Selenium Webdriver for Web automation.
Git for Code repository etc.
Automation Framework & Script Development
In this phase, the Automation framework and scripts are developed based on test scenarios provided and identified by the team. The framework codebase is reviewed and pushed to the code repository. The automation team collaborates efforts to maximize test coverage of the product.
Automation Scripts Review
In this phase, the automation team will review the automation scripts. Scripts would undergo a certification process and then checked into the automation repository. The reviewed scripts would be merged and then on the CI server like Jenkins.
Script Execution(Dry Runs)
Scripts executed by the automation engineers in the IDE tools. (Integrated Development Environment). Uncertified automation scripts are run to test the framework, test reporting formats, false negatives/positives, etc.
Certified automation scripts are integrated with the master branch. Scripts are maintained and reviewed to conform with the application code changes. Automation scripts are integrated and run in CI (Continuous Integration) server pipeline after every certified application builds.
Test execution automation reports will be generated for each Test run. Reports for each Test Run would be maintained in the Jenkins CI server. Valid failures are logged and tracked in the Defect/Bug tracking system.