Skip to main content
Version: DAI 7.2

Model Preview

Model Preview displays a read-only version of the model for review and testing.

When testing your app or viewing your test results, you might want to revisit the model in order to understand how various parts are connected. To view a model go to Designer > Models and click View on a model of your choice.

If you're a new user, you might want to try creating a new model first so that you have something to work with.

Important

If this is your first time seeing the Model Preview then you may want to review the visual comparison between Model Editing and Model preview.

At the top of the Model Preview page there are handy links related to the current model:

Top Menu Model preview top menu

Workspace

The Workspace displays a visual representation of your model. Clicking on a state or action shows the properties for the selected element in the Inspector. You can click and drag on empty space to pan or scroll when hovering over the workspace to zoom.

Model Workspace Model workspace

Element Properties

Selecting an element in the Workspace will automatically enable the Element Properties tab. You can alter the width of the Inspector by dragging the border between the Inspector and the Workspace.

Right Pane Model preview right pane

State Properties

The following properties are shown when selecting a state:

  • State Name
  • Description: free text describing the state.
  • Type: either Start, Normal, Cleanup or Exception.
  • Tags: to categorize your model to help with bug hunting.

State Properties Model preview state properties

The Run section reveals any snippets or parameters that are defined within the context of the state. Any snippets that are associated with the state will run the defined script within the snippet when the DAI engine lands on that particular state. Any parameters defined within the state are available to the state and any child actions that are defined within the state.

Run Actions Model preview state run actions

Action Properties

The following properties are shown when selecting an action:

  • Action Name
  • Description: free text describing the action.
  • Type: Normal, Sequent or Previous.
  • Weight: the probability of the engine selecting the action during an exploratory test.
  • Action Limit: number of times an action can be chosen within a state.
  • Reset action limit: reset action limit upon entering a state.
  • Tags: categories to help with Bug Hunting.
  • Connection Destination(s): any connected states or sequent actions.

Action Properties Model preview action properties

Run Actions

There are 3 stages that occur when running an action. Each stage is described below.

Action Run Actions Model preview action run actions

Pre-Run
Pre-conditions

These are rules that must be met before an action will be run by the engine. There can be multiple pre-conditions for any action. They can include any parameters that are in scope including parameters from the parent state and global scope. Each pre-condition contains the following fields:

  • Parameter: the name of the parameter. The scope is also shown for each parameter in braces.
  • Type: the parameter data type.
  • Operation: the operator used for comparison.
  • Value: the parameter value used in conjunction with the operator.
Set and Generate Parameter Values

These are rules that define parameter values before the engine runs the action snippet. There can be multiple set and generate rules for each action. Each rule contains the following fields:

  • Parameter: the name of the parameter. The scope is also shown for each parameter in braces.
  • Type: the parameter data type.
  • Operation: this will be either set or generate.
  • Value: the parameter value used in conjunction with the operator.

Action Pre-Run Settings Model preview action pre-run settings

Run

See Snippets and Parameters.

Action Run Settings Model preview action run settings

Post-Run

Checks occur after a snippet was run so you can verify parameter values for certain conditions, otherwise the action will fail. Each check contains the following fields:

  • Parameter: name of the parameter.
  • Condition: the operator of the condition.
  • Value: the value of the condition.
  • Message: an error message for when the condition falis the check

Action Post-Run Settings Model preview action post-run settings

Global Properties

You may select the Global Properites tab at any time.

Global Properties Model preview global properties

Global Parameters

Global parameters are available to all states and actions within your model. See Parameters.

Tag Definitions

Tag definitions let you create tags with explicit values to help you categorize parts of your model to improve bug hunting. An example might be categorizing a particular feature by type or by the development team that created it. Any failures found when running tests will then influence the engine to add more probability to the algorithm that decides which states and actions to hit.

Each tag definition has a name and a list of values separated by a comma.

Snippets

Multiple snippets can be defined for a state or action. These are run in their listed order. Each snippet is displayed with the following fields:

  • Name: the associated script filename.
  • Disabled: allows a snippet to be disabled during a run.
  • Input: lists any input parameters that are passed to the script.
  • Output: lists any parameters that are returned from the script.

Parameters

Each parameter that is defined globally or for a state or action contains the following fields:

  • Name: name of the parameter.
  • Type: data type of the parameter.
  • Generation: whether the parameter value is randomly generated.
  • Initial Value: works in conjunction with non-generated parameters to set their initial value.

Comparison

The model elements have a fresh look in this preview that varies from their appearance in the Model Editor. The following table lists the before and after preview of the new elements along with the existing elements:

ElementBeforeNow
Initial Stateintial state before.intial state now.
Action with snippet attachedNew action with snippetNew Action with snippet
Action without snippet attachedNew Action with snippet beforeNew Action with snippet
Global Action - See Global Actions for more information on how to create Global Actions.Global Action beforeGlobal Action
Action with submodel attached: Note that Submodels take precedence over other action types. If an action uses a submodel then that action will always display as a submodel type even if the action also uses a snippet or exits.Submodel Action beforeSubmodel Action now
Predefined Exit State associated with an action from the Connections from Action menu in ModelerExit State beforeExit State now
Previous ActionPrevious Action beforePrevious Action now
Sequential ActionSequent Action beforeSequent Action now
State without snippet attachedState before without snippetState now
State with snippet attachedState before with snippetState now
Important

The default hidden states (Error, Cleanup and Exit) are not yet visible.