Pair-Testing is the exercise where a pair of testers (or any other pair of people) perform tests together (using only one interface with the AUT), with the objective of complementing each other with their backgrounds, points-of-view, experience, knowledge, or even luck.
The logic behind doing this is an additional person that looks at what you are doing and thinks about additional or different operations. This is really very helpful when testers/devs are working on a very complex bit of functionality.
One of the developers in my team was working on a functionality few days back which was really complex. He finished the first chunk of delivery. I paired up with him (Paired testing – 1 dev & 1 tester) and we started implementing the functionality. There were few unique scenario’s which we both came up individually. Been developing/testing that functionality, the dev or the tester would have forgotten implementing/testing that.
The functionality took good shape. It took more time than it was estimated at that point in time. (Naturally we were two resources working on the same bit). The code was tested by another tester and to our surprise the most complex functionality had only one new bug in it. Then we could make out that development didn’t take more time than expected as we had only one bug to fix and retest.
According to me pairing two testers and two developers always works, but we should try and experiment mixing them both in each other’s work. I am sure it will be worth for sure.