Project Initiation In general, software development process starts with information gathering and analysis. In this stage business analyst category people are developing BRS and S/W RS like documents. BRS defines requirements of the customer & S/W RS defines functional requirements to be developed and system requirements to be used.
Test Initiation After finalization of requirement document, at this stage test engineers go through the document, understand the functionality and also have formal demo from business analyst. Afterwards if any clarification need on the functionality, they interact with business analyst through various communication channels such mails, calls, requirement Q & A doc, WebEx meetings etc. Test lead will get broad idea what tests to be applied and identify scope of items to be tested.
Activities in Requirement Phase Testing
Identify types of tests to be performed.
Gather details about testing priorities and focus.
Prepare Requirement Traceability Matrix (RTM).
Identify test environment details where testing is supposed to be carried out.
Automation feasibility analysis (if required).
Test Planning After finalization of possible tests to be applied for corresponding project, test lead category people concentrate on test plan document preparation to define work allocation in terms of “ what to test?”, “Who to test ?”, “when to test ?”, and “How to test ?”. Test Planning Activities
Preparation of test plan/strategy document for various types of testing
Test tool selection
Test effort estimation
Resource planning and determining roles and responsibilities.
Training requirement
Review Test Plan After completion of plan document preparation test plan author conducts a review for completeness and correctness. In this review plan author follows “Coverage Analysis” ØBR based coverage (What to test? Review) ØRisks Based coverage (When and Who to test? Review)
Test Design After completion of test planning and required training to testing team, corresponding testing team members will prepare list of test cases for their responsible modules. There are three types of test case design methods to cover core level testing. Refer test design techniques and tools page.
Test Case Development Activities
Create test cases, automation scripts (if applicable)
Review and baseline test cases and scripts
Create test data (If Test Environment is available)
Review Test Cases After completion of all possible test cases writing for responsible modules, testing team concentrates on review of test cases for completeness and correctness. In this review testing team applies coverage analysis.
At the end of this review test lead or testing team prepare “Requirements Traceability Matrix” or “Requirements Validation Matrix".
Test Environment Setup Test Environment decides the software and hardware conditions under which a work product is tested. It is one of the critical aspects of the testing process and can be done in parallel with the Test Case Development Phase. Test team may not be involved in this activity if the development team provides the test environment. The test team is required to do a readiness check (smoke testing) of the given environment. Test Environment Setup Activities
Understand the required architecture, environment set-up and prepare hardware and software requirement list for the Test Environment.
Setup test Environment and test data
Perform smoke test on the build
Test Execution After completion of test cases selection & their review, testing team concentrates on build release from development and test execution on the build.
Level 1(Sanity Testing) As soon as testing team receives the build from development, team will execute core functionality test cases and ensure that build is ok to do further test case execution.
Level 2….(Functional Testing)
Last Level (Regression Testing) During comprehensive test execution, test engineers are reporting mismatches as defects to developers. After receiving modified build from them, test engineers concentrate on regression testing to ensure bug fixing work and occurrences of side effects. And also execute set of test cases were identified under test case design phase to ensure the build functionally works very well. Test Execution Activities
Execute tests as per plan
Document test results, and log defects for failed cases
Map defects to test cases in RTM
Retest the Defect fixes
Track the defects to closure
Test Reporting During comprehensive testing, test engineers are reporting mismatches as defects to developers through defect template format or log the defects through defect tracking system
Defect Resolution Type After receiving defect reports from testers, developers reviews that defect and send resolution type to testers as reply.
Test Closer After completion of all possible test cycles executions, test lead conducts a review with testing team to estimate completeness & correctness of testing.
Test Cycle Closure Activities
Evaluate cycle completion criteria based on Time, Test coverage, Cost,Software, Critical Business Objectives, Quality
Prepare test metrics based on the above parameters.
Document the learning out of the project
Prepare Test closure report
Qualitative and quantitative reporting of quality of the work product to the customer.
Test result analysis to find out the defect distribution by type and severity.
Sign OFF After completion of test closer, test lead concentrates on final test summary report creation. It is a part of software release note. This final test summary report consists of below documents. ØTest Plan ØRequirements Traceability matrix ØAutomated Test Scripts if any Ø Test Metrics ØTest Case and Defect Summary Report