Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The example above assumes that a tester would be able to trigger an error message with an invalid entry, and then fix the problem that caused it and continue onwards to execute the entire test script. Sometimes, though, a tester might not be able to fix the problem nor continue executing steps. The following kind of test for an ATM is an example of a “script-killing” test:

“Confirm that when an ATM user enters their PIN incorrectly 5 times, then the machine should physically destroy the user’s card.”

If you had a set of tests that involved multiple steps and were supposed to happen after the user entered their PIN code, such as withdraw a certain amount of money from a certain type of account, you would run into the problem described above. Important combinations of test inputs would not be tested. In this example, there is nothing that a tester would be able to do after the card was physically destroyed; it would not work to say, “now fix the problem and continue executing the test.” It would be impossible to resurrect the card once it had been physically destroyed.

...