Arunkumar Khannur's Software Testing Knowledge Center

10.7. The Role of State Graphs in Software Testing

State Graphs provide framework for a model testing, where a State Graph is executed or simulated with event sequences as test cases, before starting the actual implementation phase. State Graphs specify system specification and support for testing the system implementation against the system specification. State testing is primarily a functional testing tool which is very effective when used in the early phases of design. With the help of State Graphs we can generate test cases based on following steps:

  • Explicit mapping shall be done between the elements of the State Graph (states, events, actions, transitions, guards) and the elements of the implementation (e.g., classes, objects, attributes, messages, methods, expressions)
  • Ensure that the current state of the State Graph underlying the implementation must be checkable, either by the runtime environment or by the implementation itself (built-in tests with, e.g., assertions and class invariants)
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