Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tutorial:state_modeling [2020/06/07 21:24] – [Generate Test Cases] admin | tutorial:state_modeling [2024/01/02 19:37] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Tutorial: State-based Modeling and Test Generation ====== | ====== Tutorial: State-based Modeling and Test Generation ====== | ||
| - | Learning Objectives: | + | ====Learning Objectives |
| * [[#What is a State Model]] | * [[#What is a State Model]] | ||
| * [[#Create Model]] | * [[#Create Model]] | ||
| Line 48: | Line 48: | ||
| Our goal is to create a simple model that looks like the following when completed: | Our goal is to create a simple model that looks like the following when completed: | ||
| - | {{wiki: | + | {{wiki: |
| Line 58: | Line 58: | ||
| Since a model must have one //Initial// node and at least one //Final// node. Let's create these first and place one on the left and the other on the right of the modeling canvas: | Since a model must have one //Initial// node and at least one //Final// node. Let's create these first and place one on the left and the other on the right of the modeling canvas: | ||
| - | * select //Initial// node icon {{wiki: | + | * select //Initial// node icon {{wiki: |
| * click on left side of modeling canvas to place //Initial// node | * click on left side of modeling canvas to place //Initial// node | ||
| * select //Final// node icon {{wiki: | * select //Final// node icon {{wiki: | ||
| Line 114: | Line 114: | ||
| {{wiki: | {{wiki: | ||
| - | If your transitions are not routed the way as shown above or you wish to change their routing, you can do so by dragging the transition segment. | + | ==== Arranging States and Transitions ==== |
| + | States and transitions can be re-positioned on the model while in //Edit// mode. | ||
| + | |||
| + | === Moving State === | ||
| + | To move a state, mouse over the state and drag on {{wiki: | ||
| + | |||
| + | === Moving Transition === | ||
| + | If the transitions are not routed the way as shown above, you can change the transition routing | ||
| + | |||
| + | When you move the start or end segment of the transition to the adjacent side of the state, the transition will be re-routed from that side of the state. | ||
| + | |||
| + | === Moving Transition Label === | ||
| + | Transition label can also be moved: mouse over the transition label and drag on {{wiki: | ||
| + | |||
| + | Transition label is positioned from the position of the start segment from the source state. | ||
| - | You can also change the side of the state the start and end segment of the transition by moving the segment to the adjacent side of the state. | ||
| - | Transition label can also be moved by dragging on {{wiki: | ||
| Be sure to save the model changes before moving on to next. | Be sure to save the model changes before moving on to next. | ||
| Line 134: | Line 146: | ||
| Click on {{wiki: | Click on {{wiki: | ||
| - | You should see some status messages showing up on the bottom of the screen. When done, it should auto select //RESULT// tab like below: | + | You should see some status messages showing up on the bottom of the screen. When done, it should auto select //RESULT// tab like below, if not click on //RESULT// tab on the app header: |
| - | {{wiki: | + | {{wiki: |
| + | Explanation on //RESULT// tab is covered in a separate tutorial. | ||
| - | ===== Make Changes ===== | ||
| + | ===== Model Graphs and Test Visualization ===== | ||
| + | In addition to the test case list described in the previous section, you can view the test cases in graphs: | ||
| + | * {{wiki: | ||
| + | * {{wiki: | ||
| + | * {{wiki: | ||
| + | Click on each of the graphs on {{wiki: | ||
| - | ===== Model Graphs and Test Visualization | + | The graphs should be self-explanatory. |
| + | |||
| + | ===== Make Changes | ||
| + | As you followed this tutorial, you should have noticed that you can easily make changes to the model and re-generate test cases with minimum effort. | ||
| + | |||
| + | Here are a few more changes you can make to the model: | ||
| + | * aligning states by selecting (marking) states and clicking on one of the alignment options from the toolbar | ||
| + | * re-routing transitions with transition context menu: | ||
| + | * {{wiki: | ||
| + | * {{wiki: | ||
| + | * refreshing all outgoing and incoming transitions of a state with state context menu {{wiki: | ||
| + | * styling the states and transitions through [[../ | ||
| + | |||
| + | You may also us //Box// node to group or highlight a set of states. | ||
| + | If you are modeling a workflow or process, you can use // | ||