Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
tutorial:debugging [2020/07/19 15:04]
admin
tutorial:debugging [2020/07/19 16:11]
admin [Debugging test generation]
Line 20: Line 20:
  
 ===== Debugging test generation ===== ===== Debugging test generation =====
 +Debugging issues with test generation will require knowledge on the sequencer used. If you need a refreshing course on the sequencer works, check out [[../sequencers | Sequencers]].
 +
 +The first thing that you need is to identify the sequencer being used and the error message that may be displayed.
 +
 +The sequencer used is shown on application toolbar on the upper-left corner of the IDE.  Make sure that the expected sequencer has been chosen.
 +
 +In order for the sequencers to be able to generate test sequences from the model, the following conditions must hold true for all models:
 +   * there must be a path from initial state to every state in the model 
 +   * there must be a path from every state to a final state
 +
 +One of the common issues encountered during test generation is caused by missing transitions. An example model of such case is:
 +{{wiki:overview:tut_debugging_state_model_missing_trans.png?400}}
 +
 +As you may have picked up the error in the model - it breaks the first condition: there isn't a path from initial state "Start" to state "State 2" and thus it's impossible to cover "State 2" and it's outgoing transition.  If you run test generation using //Optimal// on this model, you would get the following error message:
 +   openOptima.NoSolutionException: Unable to reach following states from state 1: state 2
 +
 +Most sequencers will report the above error except //Random// and //Concurrent// sequencers due to the nature how these two sequencers generate test sequence. 
 +
 +
 +
 +
 +
  
 ===== Debugging automation script ===== ===== Debugging automation script =====