Friday 10 March 2017

Why Not Pair Testing?

There is a long available concept for pair programming. Pair programming in one form of agile software development technique wherein 2 developers code together on one machine. Out of the 2 developers, one is acts like a driver and other like a navigator or an observer.

The job of the driver is to code and the job the navigator is to review each line of as and when it is typed. The 2 developers can switch roles on need basis. This method is implemented for decades and has increased the quality of software’s by reducing the amount of bugs and errors. Pair programming can be stated to be as one of the successful techniques of software development. If this technique has proven to be efficient in software development, why not use this technique in testing. Hence the title, why not pair testing?

There are various steps and entities involved when it comes to testing a software application. There are several rounds of testing involved. 

BA testing is purely functional and logical testing of the application. More emphasis and focus is on testing the functionality, business logic and GUI aspects. But when it comes to QA testing, the spectrum widens to encompass not only the functionality, business logic and GUI but also load, quality, validations, unit, smoke, sanity, system integration, regression, security, etc.

Yet, there are many similar loop holes that the BA and QA are trying to find while testing a software application. Combined forces together, BA and QA can effectively reduce the amount of time that is required to test the application. This will provide more time for the developers to fix the issues that come up during pair testing. Also, lot of knowledge and techniques is shared between the BA and QA when they test a build together. It also helps to come up with multiple scenarios including negative test cases. The testing is validated by 2 people instead of 1 which increases the reliability of testing. Improves bonding between teammates. Pair testing can also be seen as an opportunity to train new member in the team.
Pair testing can also be done in various combinations wherein a developer is also involved in testing. However, the prime job of the developer is to code and not to test so it is better that the developer’s time is more utilized in coding and unit testing rather than in pair testing.

Conclusion:
Pair testing is a good option in projects where time is less and more emphasis is on testing. It is better to have 4 eyes finding defects rather than 2. In projects where time is not a constraint, 1 round of pair testing can be done followed by individual rounds of BA and QA testing or vice versa.

About Author:
Sachin poojary is a consultant in Systems Plus Pvt. Ltd. Within Systems Plus, he actively contributes to the areas of Technology and Information Security. He can be contacted at: sachin.poojary@spluspl.com

6 comments: