Introduction to Test Planning
A test plan is used in the software testing process and sets out intentions regarding software testing activity targeting a software release implementation. Releases typically provide system changes and fixes to be implemented to enhance the business operations experience. We use test plans to help demonstrate that a system or product is developed as per the requirements and specifications.
The test plan lends itself to collaborative working and serves as an invitation to the recipient to question, understand and potentially influence the scope, methods, coverage, risks, issues, assumptions and approach. This can give added confidence and reassurance. This will help to achieve the result and to help reduce misconceptions around the testing activity.
Why should a test plan template be used?
Test plan templates can be used to achieve the following benefits:
• as an effective method of managing expectations within and between external third-party organisations e.g. vendor, suppliers, clients etc
• to communicate to internal interfacing departments
• to highlight areas which need early action and can save time, money and re-work later in the delivery to help avoid and manage issues.
• to give visibility to activities that the recipient audience are not directly involved with during testing and delivering the change.
• to help us remember important actions or areas of significance.
• to help track evolving plan activity and clearly state what criteria needs to be met to achieve key stages - such as acceptance into a test phase, or obtaining completion sign off.
• to aid continuous improvement which is easily refined according to your business, testing and operational needs.
• as a guide to focus collaborative working attention to areas which affect the critical path for delivery.
• to save costs via reusability - this means you can flex the format, content and detail to optimize the effectiveness and success of your future change delivery, without starting from scratch.
• to effectively serve as a contract to manage planned expectations between the business, projects and testing to deliver testing results which will allow informed decision making.
• To serve as a guide and reminder on what has been agreed and signed off.
There are many different types of test plan to cover the different stages in the delivery.
Commonly used test plans are:
Master Test Plan – this will set out overall test strategy conveying key decisions, core expectations, resources, schedules for time and effort, constraints, environments, ownership at a birds-eye level.
A Master test plan will cover intentions, dependencies, risks, issues, and expectations which are subsequently shared amongst cross functional groups.
Detailed Test Plan - this will set out more detail around the above, specific to the level, type or specific phase of testing.
A good test plan will typically include the following:
Context/Background: ‘Why’ the testing activity is needed.
What: High level details of what is changing.
Approach: Details on ‘How’ the testing will be handled and ‘Why’ the approach was taken. For example, a ‘Risk-based’ approach is often used to test the most risky or high impacting areas first.
When: This is a key piece of information setting expectations around when activity is planned.
It is of particular significance as it demonstrates when and how the testing activity fits around the actions of others before, during and after the testing.
Added benefits also include greater visibility and control over resource planning, training needs, elapsed time, contingency planning and dependency scheduling, change freeze periods and so on.
Scope: Intentions around the testing of items and features which will be covered, and equally importantly, which will not be covered!
Format: There are many different test plan templates, containing various levels of detail. The content and style usually reflect the type of industry and level of organisational maturity. Corporate organisations which are Financially regulated and often deliver a large amount of change will need a very different test plan from a small family business enterprise.
Procedures: Specific processes and procedures needed to facilitate and enable testing activity.
This may include dependency on external vendor support or technical/specialist intervention.
Techniques: Methodology, types of testing, data transmission handling, which types of testing are intended to be run. Testing tasks are often detailed as part of this to outline how testing will be achieved.
Resumption/Suspension Criteria: This sets out minimum expectation of when the testing might be suspended – for example if there were too many issues to make realistic progress or the environment is too unstable to progress testing and complete within the timescales.
Pass/Fail Criteria: This is valuable information to measure criteria on some testers favourite details such as how we know when testing is complete, e.g. ‘What does ‘Done’ look like?’.
Ownership: A test plan template is an excellent way of sharing ‘who’ is expected to own ‘what’ with regard to roles and responsibilities before, during and after testing, including support required, resources, environments and system availability etc.
Reviews: these will typically set out expectation for collaborative review to invite stakeholder participation and involvement. A chance to question, to review to feedback and influence pending or planned activity in advance of the work being undertaken.
Deliverables: This will set out what the testing is planned to produce and when.
Defect Handling/Reporting: Defects also known as bugs, are key indicators of test results and these are more cost effective if they are identified and resolved early in the process. Test plan templates usually include a section on this to clearly set out expectation on who will raise them, when and how these will be raised, triaged, reported and reviewed.
Progress reporting: Daily reporting is encouraged and expected, to give stakeholders regular updates on issues faced and progress blockers so that intervention and escalation can happen in a timely manner.
Approvals: This section is key as a decision point on whether the test results provided give enough evidence to enable the people responsible for approving to give their sign off for progress to the next stage.