August 26, 2013
Test management – Does one size fit all?
A fairly common career path for testers is that sooner or later they’ll start working as test leaders. Unfortunately, there is no clear definition of exactly what test leadership means. The job can differ greatly from company to company and there may also very well be differences between projects within the same company.
The differences may depend partly on the development methodology being used, the responsibilities of the test leader, organizational factors, the test object’s size, and the goals with testing.
It is difficult to know exactly what is expected from the test leader, what should always be done and what is more optional, not right away at least.
One thing is certain though, you cannot always work in exactly the same way in your role as test leader as it very rarely is the case that ‘one size fits all’.
That being said, there are a number of common elements that you can use as a foundation to build on. This will help you to keep track of your test assignment in an easier fashion.
First, let’s establish what test leadership is
In order to explain more practically what you should do in your role as test leader, we should first establish a common picture of what it really means to be a test leader.
The test leader has the primary responsibility of planning and managing test work. The test leader determines the approach for test work on a global level and said should be based on an established test strategy. The test leader writes governing documents such as test plans and test reports and usually participates actively in the test execution. The test leader normally takes no project decisions, instead delivering decision support and advice to project managers or steering committee.
How much actual testing the test leader can do depends on the size of the test assignment. If the assignment is large, it is more likely that the testers will need attention, in which case the test leader will not have much time to execute test cases. Other times, the test leader is also the only tester or maybe one of two testers. In this case the test leader will of course participate in the test execution.
In a greatly simplified way, one can consider the test leader as a project manager for testing or the project manager’s right hand. Typically the test leader reports to a project manager or a maintenance manager. The test leader supports and leads the testers who participate in the tests. There are always test management tasks, all throughout from the requirements phase to maintenance. The proportion of test management tasks vary though, depending on what stage the assignment is in.
What does a test leader do? 1 – Develop the test plan based on the requirements
The first thing you do as a test leader is develop a test plan. The goal of the tests is to ensure that the requirements are met, that what is developed is what users wanted and of course, to find defects. The test plan should be based on the requirements. The test leader must understand the requirements and know that they are testable. If they are not testable you have to take part in improving the requirements to be able to test against them. Sometimes the test leader ends up in assignments where documented requirements do not exist. In this situation it is important that the test leader helps to develop requirements, instead of focusing on the fact that requirements do not exist.
A test plan typically covers the following areas:
• What to test
• What to not test
• How to test
• What test data is needed and how it should be handled
• Who will perform the tests
• When the tests should be performed
• Which test environments to be used
• Start and end criteria for test work
• Roles of the test work and the responsibility they have
• How defect reporting will happen
• How status reporting will happen
The content of test plans varies according to different development methods and other factors, but regardless of the method being used, you need to be able to answer these questions if you are to successfully lead the tests.
To ensure that everyone has an understanding of the test plan, you should anchor the plan with project managers, development managers, testers and other potential stakeholders. This can be done through reviews or walkthroughs. Choose a method that suits your organization. An anchored test plan will help you during implementation because everyone understands what is being done when it is done and why it is done.
What does a test leader do? 2 – Lead test execution
During test execution, the test leader’s role is mainly to lead the tests. In a small test team, it is likely that you also have scheduled test work for yourself and your role will therefore be both leading and execution. When you are a leader, you need to motivate your team members. You make sure that the test plan is followed and if deviations from the plan occur, you report them.
Report discrepancies in writing so there is no doubt as to what is reported. Deviations from the plan may lead to major consequences so it is the test leader’s task is to develop decision support complete with consequences and a recommendation.
The test leader will also need to interact with other roles such as project managers, requirements leaders, requirements analysts, developers, architects, business specialists and clients so obviously a test leader should possess a deeper understanding of the system and its stakeholders’ needs.
What does a test leader do? 3 – Report test results
During test execution the test leader gathers data for the test report. The test report is used to describe any deviations from the test plan and to describe results of the tests performed. Do start writing the test report during test execution. It is time-consuming to write the report and it is often required as soon as the tests are completed. It is much easier to remember details when they happen, rather than afterwards.
One of the most important parts in the test report is the test leader’s recommendation. The recommendation may be to deploy the system, or if the quality is not good, to continue testing for another while. It is usually not the test leader who makes this decision, rather it is up to the steering committee, project manager or equivalent who decide whether to go live or not.
What does a test leader do? 4 – Handover of materials to maintenance
When all test cases have been executed and reported, it’s time to close the test work. Materials that will be needed in the future shall be handed over to the correct recipient, such as maintenance.
Materials that are not to be handed over should be archived or discarded. It’s great if you have the possibility to archive the test material since it may become necessary to re-use test cases in the future and thereby avoid rewriting everything from scratch. ReQtest is a test management tool that has features for archiving stuff. You can, for instance, archive projects, results of test runs and test cases. This makes it really easy to compare the test results with results from previous version of the system under test.
If applicable, restore test environments, tools and test data to their initial state. The database may need to be reset to the origin so that it becomes easy to resume tests later.
Additional tasks that a test leader might do
At the end of each week, it is advisable to write a simple and quick summary e-mail emphasizing the most important things that happened during the week and how these have affected the tests. The summary helps the project manager to summarize the project to the steering committee or to the customer. Distribute the summary to your test team to increase understanding of the test work progresses. The report may also be helpful to you yourself, so you can see the big picture.
In bigger test assignments, it is often difficult to get an instinct for testing progress. You should run a number of test cases even when you work as a test leader. This gives you an understanding of the system’s quality and test work. Do not choose to test in the most critical areas since your time will be limited.
Conduct a retrospective from test perspective when the tests are completed. This allows you to collect both good and bad experiences. Tip: Gather the test team and identify a top-three list of things that you will continue to do and three things that you want to change. With this approach, it becomes much easier to work with the gained experiences. If you identify many more things to change, the risk is that only the easiest will be done, not those which have the greatest impact.
Quite a lot is expected of the test leader, but in reality, there are no strange, outlandish or difficult things expected of the role. What is required is that you are aware of what to do so that you take this into account when scheduling. As a test leader you are responsible for ensuring that the requirements are testable, and planning the test work, leading test execution, reporting the results of the tests and other, miscellaneous tasks too, depending on different companies and different projects, departments and even different releases.
The next step
Read more about the test management in the following blog entries:
You can also read more about how requirements management is linked to testing in the article How to be excellent in both requirements management and testing.