Planning Effective Software Testing
Planning Effective Software Testing Course Details:
A complete test plan has the same sorts of information as any other good plan. It defines what will be done and what will not. It also estimates resources that will be required, as well as a schedule of activities. It establishes a basis for managing the testing activities, reporting status and mitigating testing risks.
This software testing training course will teach you how to do a complete job of planning your test activities. It will walk you through the test planning process, identify all of the inputs you will need and the things you should produce. It will give you guidance on how to plan for test case creation, defect tracking, status monitoring and progress reporting. This course will equip you with all the tools you need to create a test plan that will serve all your needs.
Call (919) 283-1653 to get a class scheduled online or in your area!
Part 1: The Test Planning Process
Test planning cannot be done in a vacuum. The test plan must integrate smoothly with all the other project plans and consider many variables, both within the testing group and throughout the rest of the organization.
- Understand How Testing Fits Within the Software Development Lifecycle
- Understand the Role and Use of a Test Plan
- See How the Test Plan Relates to Other Plans (e.g. Project Plan & Quality Plan)
- List the Inputs to Test Planning
- List the Outputs From Test Planning
- Perform Peer Reviews of the Test Plan
- Obtain Organizational Commitment to the Test Plan
- Track Progress Against the Test Plan, Report Status and Re-Plan
Part 2: Test Plan: Scope and Lifecycle
What is and is not included in the testing activities can be the subject of many disagreements; therefore, the test plan must be explicit about the scope of the testing activities and the testing lifecycle.
- Identify the Requirements Against Which the Testing Will be Done
- Define the Goals and Objectives for Testing
- Identify Boundaries – What Will and Will Not Be Tested
- Enumerate the Phases and Steps in the Testing Lifecycle
- Identify How the Testing Lifecycle Integrates With the Project Lifecycle
- Define Specific Entry Criteria – How You Know When Testing Can Begin
- Define Specific Exit Criteria – How You Know When Testing Is Complete
- Identify Testing Services That Will Be Purchased Rather Than Done In-House
Part 3: Test Plan: Traceability Matrix
The only way to assure that the test plan covers all of the requirements and goals without unnecessary tests is to have a systematic way to map tests and test cases to those requirements and objectives. Including a traceability matrix with the test plan is the easiest way to satisfy this need.
- List Every Requirement and Goal or Objectives in One Place
- List Every Test and Test Case in One Place
- Map Requirements to Test Cases
- Assure That Every Requirement Has at Least One Test Case
- Assure That Every Test Case Corresponds to at Least One Requirement
- Avoid Overkill (or Under Emphasis) in Testing
- Determine the Impact of Skipping Test Cases
Part 4: Test Plan: Required Tests
Before test cases can be identified, the system requirements and testing objectives must be used to compile a list of tests that will be required. This list of tests is the heart of the test plan.
- Identify Tests for Functional Requirements
- Identify Tests for Performance Requirements
- Identify Tests for Security and Safety Requirements
- Identify Tests for Usability, Maintainability and Other Requirements
- Define Objectives and Success Criteria for Each Test
- Document Each Test in the Traceability Matrix
- Use the Traceability Matrix to Assure Complete Coverage
Part 5: Test Plan: Test Cases
Actually writing test cases and preparing the related data consumes a significant amount of time. Therefore it is important to estimate and plan for these activities.
- Enumerate the Test Cases Required to Satisfy the Objectives for Each Test
- Identify Positive, Negative, Boundary and Special Test Cases
- Define Objectives and Success Criteria for Each Test Case
- Document Each Test Case in the Traceability Matrix
- Use the Traceability Matrix to Assure Complete Coverage
Part 6: Test Plan: Test Case Size Estimates
In order to provide a basis for planning the effort, costs and other resources needed for testing, we must estimate the size of each test case and document this in the test plan.
- Test Case Description and Instructions
- Input Data and/or Database Records Required by the Test Case
- Output Data and/or Database Records the Test Case Will Produce
- Special Resources Required by the Test Case
- Execution Time for the Test Case
Part 7: Test Plan: Resources
Resources to support testing go far beyond just the people who will do the testing. The test plan must account for all required resources.
- Identify the Testing and Test Case Development Environment (e.g. Hardware, Operating Systems, Networks, Software, Databases)
- Specify Any Special Systems (e.g. Test Automation, Defect Tracking)
- Enumerate Knowledge and Skills Needed
- Plan for Hiring, Contracting and Training
Part 8: Test Plan: Effort, Cost, Budget & Schedule
Effort, cost, budget and schedule are usually the items we are asked to provide. But until all of the items in sections II through VII have been identified and estimated, we do not have the information we need to provide these things. These critical parts of the test plan can now be completed.
- Identify the Activities Required to Produce and Execute All of the Test Cases, Track Defects, Retest and Do All of the Other Tasks Associated With the Testing Lifecycle
- Estimate the Effort Required Based on the Size Estimates and Identified Activities
- Identify All Costs (e.g. Labor, Equipment, Software Contracted Work)
- Establish a Schedule for All Testing-Related Activities
- Spread the Costs Across the Schedule to Produce a Budget
- Validate Budget and Schedule Against Project Constraints
- Resolve Budget or Schedule Issues
Part 9: Test Plan: Risks
Testing activities have their own unique risks that may not be visible or pertinent to other stakeholders in the project. The testing group should engage in risk management to assure that those items are handled appropriately and included in the test plan.
- Brainstorm a Testing-Related Risk List
- Group and Consolidate Risks
- Quantify Risk Probability and Impact
- Make Risk Tracking Plans
- Make Risk Mitigation Plans
- Make Risk Contingency Plans
Part 10: Test Plan: Management,Tracking & Reporting
The test plan must identify how the testing group will maintain control over the testing activities and assure that they are progressing as planned. It must also define how they will report status to other project stakeholders and take corrective actions when necessary.
- Identify Measurements That Will Be Used in Tracking and Managing the Testing Activities
- Determine How the Data and Reports That Are Generated by the Testing Process Will Be Stored, Managed and Made Available
- Determine How Often Testing Status Will Be Checked and Who Will Participate in Status Checking Activities
- Identify Triggers for Corrective Actions When the Testing Activities Deviate From the Plan
- Determine What Must Happen When the Test Plan Must Be Updated
- Identify All Individuals and Groups That Have a Stake in the Testing Activities
- Determine How the Stakeholders Will Be Involved and Kept Informed About Testing-Related Activities
*Please Note: Course Outline is subject to change without notice. Exact course outline will be provided at time of registration.
- Objectively identify when testing is complete so you can eliminate ambiguity and disagreements
- Clearly describe the importance and role of the Test Plan so other stakeholders embrace it as important
- Understand how to list the content of a complete Test Plan so you never miss any important components
- Obtain key facts & data you need for accurate Test Planning
- Identify necessary testing-related activities so everyone understands exactly what needs to be done
- Use a requirements-to-test traceability matrix to assure nothing has been overlooked
- Prioritize testing-related activities so tradeoffs can be done with confidence
- Estimate resources required for testing—be assured that you have what you need, when you need it
- Define a comprehensive testing calendar
- Assure the completeness of your tests and eliminate surprises for your customers
- Quality Analysts
- Quality Engineers
- Quality Managers
- Project Managers
- Software Engineers
- Testing Leads