In this last chapter on behavioral or black-box test design, I’ll cover an approach to test design that focuses on reacting to what happens during test execution. These techniques are typically employed as part of what I described in an earlier chapter as a dynamic test strategy.
To me, reactive tests are particularly interesting to address the inevitable gaps in my carefully designed, prewritten tests. Any one approach to testing won’t reveal all bugs. It’s important to have a blended approach to testing to ensure adequate risk mitigation. To fill the gaps in your predesigned tests during the test execution period, a combination of inspiration, experience (yours or others), and cunning are required.
Reactive tests of the kind I discuss in this chapter often rely heavily on the tester’s skill and intuition, experience with similar applications, and experience with similar technologies. Since you are trying to fill gaps that appear (or at least can be found) during the test execution, the tests I describe are not predesigned to a great level of detail. Instead, the specifics of these tests are created during test execution. As I wrote in an earlier chapter, the test strategy for such tests is dynamic. The test cases themselves can be described as reactive, since to a great extent testers create the test details on-the-fly in reaction to the reality presented by the system under test.
Now, while the testers create the specifics ...