Software Testing is a mandatory part of any Software Development process. It ensures that all technical and business requirements are met satisfactorily. Software Testing Life Cycle (STLC) is a series of systematically planned phases in case of a waterfall software development approach and continuous iterative & agile in case of agile or iterative development of software.
Software testing life cycle comprises of various activities with specific goals. Organizations may tweak these to align with their corporate philosophy, but the basic essence remains the same.
In the waterfall model, the activities are performed in phases as shown in Waterfall diagram below, whereas in Agile model, all these activities are performed in every release, as shown in the following agile diagram below.
Feature understanding and Test script updates are simultaneous activities which run in every release however, there are activities which are required only once like test environment setup and only new release deployment is required.
Lets understand how testing is carried out in the traditional waterfall approach. To know more about agile testing click here.
Requirement Analysis
- The QA team interacts with various stakeholders to understand their requirements for testability. The requirements can be either functional or non-functional in nature.
- Priorities are attached to the requirements for testing.
- The test conditions are defined in this phase. Every test condition should be traceable to a requirement. To aid this, a Requirement traceability Matrix is maintained where each requirement is mapped with test conditions. Requirement traceability Matrix helps in keeping track of testing.
- Testing environment is identified during this phase.
Test Planning and Test Case Development
Test planning phase is sometimes referred to as Test Strategy phase. It is very important from technical and business point of view.
- A detailed test plan is created in this phase.
- All testing strategies and approaches are defined.
- Risk Analysis, Risk management and mitigation strategies are defined.
- Scheduling is done for various testing phases.
Once test planning is completed, the team starts working on test cases based on inputs from planning phase.
- Detailed Test case Document is prepared.
- Test Scripts are prepared for tests marked for automation testing.
- Test cases and test scripts are reviewed by peers and managers to ensure complete coverage.
- Test data is prepared in test environment. Click to read more about this blog : Software Testing Life Cycle
No comments:
Post a Comment