One of the main methodologies in Agile is extreme programming where programming is done in pairs with extensive peer review. Extreme Testing by using pair testing, not to be confused with Pairwise Testing, is a cousin of Extreme Programming developed at XBOSoft from the testing point of view. In our own software testing practice, we have used Extreme Testing methods to increase test effectiveness and as a great way to get testers to collaborate in a purposeful way. Within Extreme Testing, we have a few non-mutually exclusive practices:
- One watching and one doing (one driver and one navigator)
- One test case writer and one executor immediately after writing
- One defect writer with a test case writer writing a regression test case related to the defect
- One executing test cases on a module that is integrated tightly, and another module being tested by another tester who is testing linked or integrated modules or functions
- Paired testers become interchangeable and ensure consistency of documentation.
- One experienced tester can guide a less experienced tester.
- Using two screens instead one, or four screens rather than two. This especially helps when testing across modules or functions that are integrated, or have related data.
Increasing test effectiveness is always the goal of QA and test departments. Most of the efforts focus on measuring the number of defects or the effectiveness of test cases in finding defects. Extreme Testing is an outside-the-box methodology based simply on the premise that two brains are better than one, and that working together can produce results greater than the sum of individuals.