Prashant Hegde specializes in building high-performing teams. He is an accomplished writer and an international speaker.
March 17, 2022
Pair testing has been around for many years, and it is still popular among testers. Pair testing is a cheap and effective way to get more ideas about improving a product. It helps increase collaboration and team spirit, which encourages innovation. It has its advantages and some challenges too. This article will discuss everything you need to know about pair testing.
What is pair testing?
Pair testing involves two team members working on a single computer to test the same application.
One team member takes the role of the driver and executes the tests. The driver controls the mouse and keyboard.
While another team member is called the navigator, the navigator directs the session. The navigator guides the test ideas, notes, observes bugs, asks questions, provides feedback, etc.
Pair testing is a time-boxed activity ranging from 60 to 90 minutes.
The team members switch roles frequently based on task or on time.
Pair testing has derived from the Extreme programming(XP) development practice called pair programming.
Pair testing is a form of exploratory testing. Pair testing is effective when you do not have prewritten scripted test cases, which may limit your thinking and freedom.
Pair testing is performed in-person or remotely. Video conferencing tools enable remote pairing by sharing a screen or remotely controlling others' mouse and keyboards.
Who can perform pair testing together?
Tester’s usually prefer pairing up with other testers or with developers. However, you can pair up with anyone in your team or organization if you see the value and a satisfactory outcome from pair testing. Below are a few combinations that can work:
You can pair up with anyone based on context and the goal you want to achieve from the activity.
Pairing up with a programmer gives you insights into how the software is built or debugged. You may learn to debug, write scripts, or analyze the logs.
Pairing up with a product manager gives you insights into what problems we are trying to solve and if the application can meet them.
By pair testing with a tester, you can learn other tester’s heuristics and ideas.
By pairing with people from diverse backgrounds, you will learn new skills, tools, techniques, tricks, etc.
What are the benefits of pair testing?
Aids in breaking down silos - Testers often work in silos. Poor communication and collaboration are the leading cause of project failure. Pair testing lets testers break silos and collaborate with people from various departments. Pair testing helps in bridging gaps between teams and departments.
Get different perspectives - Pairing with people from various diverse skills lets testers discover new perspectives. Furthermore, it fosters a more comprehensive understanding of the applications they are testing.
Fosters knowledge sharing - Testers work in different teams in an organization. They may not have the visibility or knowledge of other testers' features. Pair testing is an opportunity for testers from different teams to exchange ideas and add more value to their organizations. Testing is all about Test idea generation. Pair testing naturally fosters the exchange of ideas, which triggers more ideas to identify risks.
Improves effectiveness of testing - The structure and the roles of the pair testing activity helps to better focus on the assignment at hand. Two heads are always better than one. During pair testing, your partner is constantly reviewing your work, which improves the effectiveness of your testing.
Unearths more bugs - When you’re working on the same piece of software for a long time, you can easily overlook some problems. A fresh pair of eyes find bugs. A new person who is not familiar with the application comes with a fresh perspective. The newness allows them to notice some critical bugs and provide valuable feedback to the team.
Train and mentor newbie/novice testers- Several testers successfully use pair testing to train novice testers. In such cases, experienced testers pick the role of navigators, and the novice tester acts as the driver. This approach allows new testers to enhance their domain knowledge and significantly increase productivity.
How to perform pair testing
You may be already performing some kind of pair testing informally. Following a structured approach to Pair testing helps you maximize its benefits.
Preparation is the key to the success of pair testing
Find a partner for your next pair testing session. Share the invite at least a week early.
Set up the required test environment and share it with the invitee. Help them get some understanding of the application before the session.
Create and share a high-level plan containing areas to test and associated risks, devices, or browsers to cover, tools to use, objectives, expected outcome from the session, etc.
Share the documents that the invitee needs to go through and clarify their doubts. E.g., Requirements, User stories, designs, and other available documentation.
During the session
Recommended time for pair testing sessions is 90 minutes. However, experiment with different time splits and settle on what works best for you. For example, below is the suggested time split for a 90 min session:
15 minutes – The inviter(the tester who conducts the pair testing, the one who is part of a team) communicates the plan, goals, and other required instructions to the invitee(a tester from another team/person joins accepts the invite). Though the pair is collectively responsible for the outcome of the pair testing session. The responsibility of maximizing the output of paired testing lies with the inviter.
60 minutes – Focused time for the pair to explore the application. The inviter first takes the role of navigator and the invitee that of the driver. The pair swap their roles after 30 mins. The invitee becomes the navigator and drives the session, while the inviter becomes the driver. Note that you can also make the switch based on a specific task.
The navigator provides directions for the driver to test based on his ideas. The navigator thinks out loud and suggests specific test ideas. The driver can ask questions during this process to clarify doubts, provoke thoughts, etc. The navigator thinks strategically by looking at the big picture. The Driver thinks tactically by diving into the details.
While the driver executes the tests, the navigator notes the observations. These notes serve as the session document that is shared with the stakeholders. Participants can use any preferred ways of note-taking like mind maps, session notes, etc. The paired testing is an interactive session where team members contribute ideas and testing equally by engaging in meaningful conversations.
15 minutes – Debrief. The pair reflects on what they tested and their overall impression of the application. They also summarize the information they gathered, observations made, bugs, and improvements they noted. The pair also discuss what went well in the session, what they could have done differently, and how they can improve the next time they meet.
There is no metric to measure the success of pair testing. Reflect on the value you derive from the exercise. Ask yourself -
Do you feel effective or confident with pairing?
Did the session meet your expectations or the outcomes you wanted?
Were you able to find helpful information or uncover risks that threaten your product's value?
Did you learn something new and valuable during the process?
Challenges in implementing pair testing
Resistance to the new change - Most organizations resist a recent change by default. Managers may expect testers to get more work done by working on different things in parallel. Additionally, they may be worried about halving productivity and slowing down the time-to-market.
Two testers will need a much shorter time to test than individual testing alone. Pair testing, when done right, saves time and accelerates releases. Let's say you perform pair testing with a person from another team. You get an additional person to test your application for a short duration. Moreover, this can help testers from different teams to build better bonds and support each other in their releases. Get the buy-in from your managers and stakeholders. Explain your vision and the impact the new initiative can bring, explain the benefits of pair testing and resolve their concerns.
Reporting bugs after the session - Though testers note some details about the bug during the pair testing session. Several testers defer writing detailed bugs to focus on testing to maximize the outcome of pair testing. Reproducing and logging the bugs at the end of the session can turn out to be time-consuming and cumbersome.
Testers need to save time by leveraging free tools like Bird Eats Bug to record their bugs during pair testing sessions. Bird automates bug reporting by capturing all the details required to fix a bug. The report includes visual proof, steps to reproduce the error, and technical data like Console logs, network requests, system info, etc. In addition, bird offers fantastic features like "Replay a bug," enabling testers to reproduce bugs and capture errors seamlessly.
Avoid common pitfalls - Coaching may be essential for non-testers who do not have a testing focus. Testers need to drive the pair testing session to focus and not deviate from the planned goals. Be open to conflicting viewpoints and respect other person's opinions and thoughts. Also, pair testing is not a way to get test cases executed by someone in the team while instructing and watching them. Lastly, while pair testing the duo may decide on the testing types they want to perform based on the context of their project. However, pair testing is not a substitute or a reason to skip any type of testing.
Performing pair testing is a great way to get feedback from a different perspective and balance out biases. It can also improve team dynamics and provide a more inclusive environment for everyone. Using pair testing is a wise idea to leverage the expertise of two team members to obtain deeper insights into the software under test.
Is pair testing for you? The answer is for you to determine. However, there is no reason not to try. Give Pair Testing a try! There are different styles of pairing., Once you practice pair and get the hang of it, you can explore the different types and pick the one that works best for your team.