Testing is an important phase in the project life-cycle. A structured well defined testing methodology involving comprehensive unit testing and system testing not only ensures smooth transition to the production environment but also a system without defects.
The testing phase can be broadly classified into the following categories:
- Integration Testing
- System Testing
- Regression Testing
- Performance Testing
- Operational Qualification
A test strategy is an outline that describes the test plan. It is created to inform the project team the objective, high level scope of the testing process. This includes the testing objective, methods of testing, resources, estimated timelines, environment etc.
The test strategy is created based on high level design document.For each testing component test strategy needs to be created. based on this strategy testing process will be detailed out in the test plan.
Test Planning is a key for successfully implementing the testing of a system. The deliverable is the actual “Test Plan”. A software project test plan is a document that describes the Purpose, System Overview, Approach to Testing, Test Planning, Defect Tracking, Test Environment, Test prerequisites and References.
A key prerequisite for preparing a successful Test Plan is having approved (functional and non functional) requirements. Without the frozen requirements and specification the test plan will result in the lack of validation for the projects testing efforts.
The process of preparing a test plan is a useful way to get to know how testing of a particular system can be carried out within the given time line provided the test plan should be thorough enough.
The test plan outlines and defines the strategy and approach taken to perform end-to-end testing on a given project. The test plan describes the tasks, schedules, resources, and tools for integrating and testing the software application. It is intended for use by project personnel in understanding and carrying out prescribed test activities and in managing these activities through successful completion.
The test plan objectives are as follows:
- To define a testing approach, scope, out of scope and methodology that encompasses integration testing, system testing, performance testing and regression testing in one plan for the business and project team.
- To verify the functional and non functional requirements are met.
- To coordinate resources, environments into an integrated schedule.
- To provide a plan that outlines the contents of detailed test cases scenarios for each of the four phases of testing.
- To determine a process for communicating issues resulting from the test phase.
The contents of a typical test plan consist of the following:
- An introduction that includes a purpose, Definition & Acronym, Assumptions & Dependencies, In scope, Out of scope, Roles& Responsibilities and contacts. This information is obtained from the requirements specification.
- System Overview will explain about the background and the system description.
- A test approach for all testing levels includes test Objectives for each level, Test responsibilities, Levels of testing, various testing, Test coverage, Testing tools, Test data and Test stop criteria.
- Test planning specifies Test schedule, Documentation deliverables, Test communication and Critical and High risk functions.
The test plan, thus, summarizes and consolidates information that is necessary for the efficient and effective conduct of testing. Design Specification, Requirement Document and Project plan supporting the finalization of testing are located in separate documents and are referenced in the test plan.