Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
tutorial:comb_data_modeling [2020/06/11 03:39] admin [Build Model] |
tutorial:comb_data_modeling [2021/01/05 03:00] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Tutorial: Combinatorial Modeling and Test Generation ====== | ====== Tutorial: Combinatorial Modeling and Test Generation ====== | ||
| - | Learning Objectives: | + | ====Learning Objectives |
| * [[#What is Combinatorial Model?]] | * [[#What is Combinatorial Model?]] | ||
| - | * [[#Build Model]] | + | * [[#Create |
| * [[#Generate Test Cases]] | * [[#Generate Test Cases]] | ||
| * [[#Make Changes]] | * [[#Make Changes]] | ||
| Line 24: | Line 24: | ||
| - | ===== Build Model ===== | + | ===== Create |
| To create a combinatorial model, clicki on {{wiki: | To create a combinatorial model, clicki on {{wiki: | ||
| Line 39: | Line 39: | ||
| {{wiki: | {{wiki: | ||
| - | The new model is open in //IDE// like this: | + | The new model is open in //DEFINE// tab like this: |
| {{wiki: | {{wiki: | ||
| + | |||
| + | |||
| + | The first step is to define all of the variables and set the domain values for each variable. This is done in //DEFINE// tab: | ||
| + | - click on {{wiki: | ||
| + | - select the appropriate data type: int, float, txt or bool | ||
| + | - enter domain values one value on each line | ||
| + | |||
| + | You should have something like this: | ||
| + | |||
| + | {{wiki: | ||
| + | |||
| + | Go ahead and create two more variables and we have the model built: | ||
| + | |||
| + | {{wiki: | ||
| + | |||
| + | You can also add constraints to remove certain permutations that are illegal, invalid or unwanted for any reason. | ||
| + | |||
| + | Save the changes and we are ready to generates the test cases from this model. | ||
| + | |||
| ===== Generate Test Cases ===== | ===== Generate Test Cases ===== | ||
| + | Test generation from combinatorial model is done in [[../ | ||
| + | |||
| + | {{wiki: | ||
| + | |||
| + | To generate the test cases, | ||
| + | * select an algorithm {{wiki: | ||
| + | |||
| + | * click on ▶ next to the algorithm dropdown | ||
| + | |||
| + | Generated test cases are listed in // | ||
| + | |||
| + | {{wiki: | ||
| + | |||
| + | You may remove or add additional rows to the // | ||
| + | |||
| + | Feel free to experiment with different generation algorithms. | ||
| + | |||
| + | When selecting //Mixed// algorithm, you will see an additional section displayed below the header (variable names): | ||
| + | |||
| + | {{wiki: | ||
| + | |||
| + | //Mixed// algorithm allows you to selectively apply different interaction strength (pairwise vs three-wise, etc.) for specific subset of variables. | ||
| + | |||
| + | We will not cover //Mixed// algorithm here, but you can find more details about //Mixed// algorithm in [[../ | ||
| + | |||
| + | |||
| + | |||
| ===== Make Changes ===== | ===== Make Changes ===== | ||
| + | |||
| + | As you must have figured out that you can easily add additional variables and remove any variables from the model. | ||
| + | |||
| + | Other changes are adding, removing and changing the domain values of each variable. | ||
| + | |||
| + | Upon any changes to the model, you should always re-generate // | ||
| - | ===== ===== | ||