Arunkumar Khannur's Software Testing Knowledge Center

10.8. Test Design Strategies for State Graph based Testing

Test cases derived from State Graph are sequence of input events. In state graphs, exhaustive test case designing in order to execute every path at least once is impossible and unpractical. As such, test cases using state graph model can be designed using following notions or rules:

  • All states coverage is achieved when each state of the State Graph is exercised at least once during testing. This is usually not a sufficient level of coverage, because behaviour faults are only accidentally found. If there is a bug in a transition between a specific state pair, it can be missed even if all states coverage is reached.
  • All-events coverage: Each event of the State Graph is included in the test suite (is part of at least one test case)
  • All-actions coverage: Each action is executed at least once
  • All-transitions coverage: All-transitions coverage is achieved when the test executes every transition in the model at least once. This automatically entails also all states coverage. Reaching all transitions coverage doesn’t require that any specific sequence is executed, as long as all transitions are executed once. A bug that is revealed only when a specific sequence of transitions is executed is missed even in this coverage level. The coverage can be increased by requiring All n-transition coverage, meaning that all possible transition sequences of n or more transitions are included in the test suite.
  • All n-transition sequences:
    • Every transition sequence generated by n events is exercised at least once
    • All transitions = all 1-transition sequences
    • All n-transition sequences implies (subsumes) all (n-1)-transition sequences
  • All round-trip paths: every sequence of transitions beginning and ending in the same state is exercised at least once
Khannur's Book
Arunkumar Khannur, Software Testing - Techniques and Applications, Published by Pearson Publications, 2011 (ISBN:978-81-317-5836-6; Pages:341 + xxii)
Follow Khannur
Khannur's Company
ISQT Process & Consulting Services Pvt. Ltd., Bangalore, INDIA
Khannur's Software Testing Forum
 Contact Khannur
ISQT Process & Consulting Services Pvt. Ltd.
#732, 1st Floor, 12th Main,
3rd Block, Rajajinagar,
Bangalore - 560010, INDIA
Phone: +91 80 23012511
Skype: arun.isqt