Leadership in Testing – Key Responsibilities
The importance of testers and the testing teams has been established again.
An application or product's success is largely attributed to efficient and effective testing techniques which form the basis for valid bug exposure.
What You Will Learn:
A test team
A test team can comprise of individuals having varying skill levels, experience levels, expertise levels, different attitudes, and different expectations/interests levels. The attributes of all these different resources' need to be tapped rightly, in order to maximize quality.
They need to work cohesively together, follow the test processes and deliver the committed piece of work within the scheduled time. This obviously necessitates the need for test management, which is most often performed by an individual with the role of being a test lead.
As testers, the work that we’re finally boiled down to do is a direct result of leadership decisions. These decisions are an outcome of trying to implement effective QA processes in addition to good test team management.
The article itself is divided into a tutorial of two parts:
- The first part would help in bringing out the commonly performed duties by a test lead and what other factors are to be considered while managing a test team.
- The second part would highlight some key skills required to be a good leader and few other skills about how to keep a test team happy.
These two tutorials would not only help the Test leads in terms of how and what to modify in order to get optimal results, but also guide the experienced testers who aspire to move into new leadership roles.
Test lead/leadership skills and responsibilities
By definition, the basic responsibility of any test lead is to effectively lead a team of testers to meet the product goals and thereby achieving the organization goals that are derived. Off course, however straightforward the definition of the role is, it inherently translates into a whole series of responsibilities for the individual. Let's take a look at the commonly carved out responsibilities of a test leader.
Recommended read => How to build a successful QA team?
A test lead is most commonly responsible for the following activities:
#1. He must be able to identify how his test teams align within an organization and how his team would achieve the roadmap identified for the project and the organization.
#2. He needs to identify the scope of the testing required for a particular release based on the requirements of the document.
#3. Put out the test plan after discussions with the test team and have it reviewed and approved by the management/ development team.
#4. Must identify the required metrics and work to have them in place. These metrics could be an inherent goal for the test team.
#5. Must identify the testing effort required by calculating the sizing needed for the given release and plan the required effort for the same.
#6. Figure out what skills are required and balance the test resources accordingly with those needs based on their own interests as well. And also identify if there are any skill gaps and plan for training & education sessions for the identified test resources.
#7. Identify the tools for test reporting, test management, test automation, etc. and educate the team on how to use those tools. Again, plan knowledge transfer sessions if required to the team members for the tools that they would use.
#8. Retaining skilled resources by instilling leadership in them and offer guidance to the junior resources as and when required thereby enabling them to grow.
#9. Create a fun and conducive environment for all the resources to make sure they have maximum throughput.
Manage the test teams effectively
#1. Initiate the test planning activities for test case design and encourage the team to hold review meetings and ensure that the review comments are incorporated.
#2. During the testing cycle, monitor the test progress by constantly assessing the work assigned to each of the resources and re-balance or re-allocate them as required.
#3. Check if there might be any delays in achieving the schedule and hold discussions with testers to figure out the issues that they may be facing and strive hard to resolve them.
#4. Hold meetings within the test team to make sure everyone is aware of what the other fellow team members are doing.
#5. Present the timely status to the stakeholders & management and instil confidence about the work being done.
#6. Prepare any risk mitigation plans if in case any delays are foreseen.
#7. Bridge any gaps and differences between the testing team and the management in order to form a clean two-way interface channel.
Recommended read => How to keep motivation alive in software testers?
Although leadership can mean a whole arena of things like power, knowledge, the ability to be proactive, intuitive, the power to influence decisions, etc., it's often seen that many a time even though certain test leaders possess almost all these qualities inherently, they're still probably way off the target at managing their test teams effectively because of the manner in which they attempt to bring out these qualities.
Often in testing teams, although the leadership and management go together hand in hand, they definitely do not mean the same thing.
A test leader may possess all the leadership skills on paper, but that doesn't mean that he can manage a team as well. We have several policies set in place for test processes itself. However, the art of management of test teams is often a grey area in terms of defining a hard and fast rule for management.
Any thoughts on why that might be and how is any test team different from other teams?
I think that it's extremely important to realize that with a testing team using a management approach which is theoretically perfect and proven, may not always work well.
Important things to consider in order to manage test teams effectively
There are certain facts that need to be taken into consideration in order to manage a test team effectively. This has been elaborated below.
#1. Understand the testers
A tester's job is to find the defects or bugs in software to improve its quality. In a team, there could be testers who absolutely enjoy breaking the code by bringing in innovative and creative styles of testing. Needless to say, this requires a person to have skill, creativity and the kind of mindset of looking at software quite differently from the rest.
With a significant amount of time spent in your job in your daily life and growing experience, test resources almost cannot break out of this “test” mindset and it becomes a part of who they are, personally and professionally. They look for defects in almost everything ranging from the product to processes, test leads, managers etc.
Taking time to understand this mindset of the test team is the first and foremost step in being able to derive a reasonable test management approach for a test lead.
#2. Testers' work environment
The test team most often finds themselves dealing with high levels of pressure because of strict deadlines against the voluminous amount of testing they need to achieve with the given test resources.
Sometimes there could be a delay in delivering the code to the test team or delay in acquiring the required environment or delay in fixing/verifying defects due to innumerable factors. All this, with no extension in schedules.
In addition to this, there could be a large amount of test effort required, whereby insufficient or incomplete testing may directly raise questions on the quality of the product.
Even though test teams may flag certain risks they identify pro-actively, many a time this may not be looked very positively by the management either because they may not completely understand the nitty-gritty involved or they may look at it as a lack of skill level in test teams.
Doubtlessly the test teams undergo high levels of frustration along with the pressure to deliver on time. Gauging the environment the test team is frequently exposed to, working in it could be an invaluable input for a test lead/ manager for effective management.
#3. Test team's role
After a lot of years in the testing domain, I have come to realize that no amount of testing is “complete” testing and uncovering “all” defects is a fictional phenomenon.
So many times regardless of the large test effort, defects are found in the customer or production environment and termed as an “escape” from the test teams. The test team often takes the hit for such escapes and is asked to quantitatively describe their testing coverage to decipher if this field issue could have been caught during the test cycle.
Sometimes this causes a big letdown to the testers regarding how their roles are portrayed to others in terms of their skills and hence the vision of that to themselves in the broader picture.
Understanding all these realities within test teams would help in level-setting the kind of management approach to follow, which means there would be a good chance of stepping away from standard and theoretical management techniques.
We will touch upon these techniques in the second part of this tutorial. So stay tuned! Or better still; do let me know what you think of this tutorial by leaving your valuable comments.
About the Author: This is a guest article by Sneha Nadig. She is working as a Test lead with over 7 years of experience in manual and automation testing projects.