testing Software Testing Techniques - State Transition


This technique should be used when you have any workflow in place, and should consider positive test cases (transitions that can happen), as well as negative test cases (transitions that are not allowed).

Any rule that can be described, thinked, scratched as a state transition diagram, workflow, lifecycle can have their test cases designed using this technique.

This technique can be also works to find completeness problems inside worflows and diagrams during documentation analysis.


If a state transition like rule is provided as a series of statements instead of a table or graphic diagram, you can proceed as following:

  1. Make yourself a state transition table as in the ticket system example
  2. Add question marks for unclear transitions
  3. Add an extra column at the end for broad discussion with business - raise questions and take notes

This is a way common situation we face on daily basis, and this practice can be handful to gain confidence on what is being developed and how it should be tested