The QA process begins with the user story. By working with the Business Analysts, the QA team determines the requirements and defines the acceptance criteria for the story. With better visibility, the team can effectively plan the testing strategy for the forthcoming stories.
This is a crucial review stage where the developers, BA and QA teams conduct a comprehensive discussion to identify the scope of the story and prioritize relevant test scenarios. Inputs are taken from everyone involved in the process to minimize redundancies and gain clarity.
Test Scenarios Creation
The QA team begins to prepare test data, identify the manual and automated test scenarios, followed by the steps for their implementation. The developer and BA also review the scenarios to help validate the functionality for each test case.
Automated Test Scenario Implementation
Before diving into the automation phase, the QA team identifies which scenarios can be successfully automated. We follow test automation best practices and use enterprise-grade tools and software for efficient implementation, thereby reducing the margin of error with each iteration.
At this stage, a preliminary build is ready for the QA team to run manual test scripts, while maintaining internal code quality. Usability and exploratory testing is done to check key scenarios for errors, and simulate the end-user functionality of the software.
Automation Test Execution
With every iteration, numerous automated tests are run through the CI/CD deployment pipeline. This enables quicker bug detection and closure, seamless coordination between multiple teams, and lesser turnaround time for product release.
This is the acid test phase of the software. The build is tested for intended performance and functionality in live production environment. The objective is to verify if all the requirements are accurately met while also being stringently tested for quality.
This is where the stakeholders come together for a high-level overview of the product. At this stage, the product is a work in progress, and through client feedback, the QA team gathers information about any new requirements or expectations based on what has been achieved so far.
Automation Test Maintenance
Whenever there is a state change in the system, the automated tests require immediate updation for the software to perform smoothly. The team needs to periodically refactor these tests for better maintainability, speed, and more targeted automation.