Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
data_design_ide [2020/11/09 15:43] admin [DEFINE] |
data_design_ide [2021/02/12 15:28] admin [DEFINE] |
||
---|---|---|---|
Line 23: | Line 23: | ||
* //Variable Name// - variables must have unique names and preferably legal java variable names | * //Variable Name// - variables must have unique names and preferably legal java variable names | ||
* //Data Type// - appropriate data type must be selected especially if the variables are referenced by //Derived// variables | * //Data Type// - appropriate data type must be selected especially if the variables are referenced by //Derived// variables | ||
- | * //Domain Values// - a list of discrete values to be used to generate (populate) [[#DataTable]] or groovy/java expression if //Derived// is checked | + | * //Domain Values// - a list of discrete values to be used to generate (populate) [[#GENERATE]] or groovy/java expression if //Derived// is checked |
- | * //Derived// - check this box to exclude | + | * //Derived// - check this box if the value of the variable depends on values of other variables. |
* // | * // | ||
+ | |||
+ | == Domain Expression == | ||
+ | Domain values for non-// | ||
+ | |||
+ | For //Derived// variables, //Domain// must have exactly one value, which can be static value or //groovy// expression. Below is a simple example to calculate the insurance premium credit of $100 given to good student age < 20: | ||
+ | |||
+ | (Age < 20 && GoodStudentStatus)? | ||
+ | |||
+ | You may use plugin reference in //Domain// value/ | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | For more complex scenario: | ||
+ | | ||
+ | |||
+ | where order1Obj is a groovy/java object that is defined/ | ||
+ | |||
+ | Use [blank] to encode blank string and [null] for null string/ | ||
=== Constraints / Rules === | === Constraints / Rules === | ||
- | When designing test data using combinatorial testing techniques, we often need to remove or avoid certain combinations as they are either unfeasible or unnecessary for whatever reason. | + | When designing test data using combinatorial testing techniques, we often need to remove or avoid certain combinations as they are either unfeasible or unnecessary for whatever reason. |
The solution is to create a set of constraints or rules to filter out certain permutations. | The solution is to create a set of constraints or rules to filter out certain permutations. | ||
Line 38: | Line 58: | ||
- | The // | + | The // |
| | ||
Line 70: | Line 90: | ||
IF (WINTER=true && TEMPERATURE > 30) || (SUMMER=true && TEMPERATURE < 90) THEN GOOD_WEATHER = true | IF (WINTER=true && TEMPERATURE > 30) || (SUMMER=true && TEMPERATURE < 90) THEN GOOD_WEATHER = true | ||
+ | Static values specified in comparison must be a valid value for the variable or it will result in errors during generation. | ||
+ | |||
---- | ---- | ||
==== GENERATE ==== | ==== GENERATE ==== | ||
Line 89: | Line 111: | ||
Be aware that any changes to // | Be aware that any changes to // | ||
+ | === Mixed Strengths === | ||
By default, //Overall Strength// applies to all variables excluding //Derived// variables. In cases you wish to apply more rigorous testing than other variables. | By default, //Overall Strength// applies to all variables excluding //Derived// variables. In cases you wish to apply more rigorous testing than other variables. | ||
{{wiki: | {{wiki: | ||
+ | |||
+ | After selecting //Mixed// strength, section //Variable Interaction (Mixed Overall Strength only)// appears. | ||
+ | |||
---- | ---- | ||
Line 103: | Line 129: | ||
Refer to [[ide_script | Script Editor ]] for more information about this script editor. | Refer to [[ide_script | Script Editor ]] for more information about this script editor. | ||
+ | |||
+ | There are two types of scripts: //MAIN// and //DATA//. | ||
+ | |||
+ | //MAIN// script is the main program which executes the test cases. | ||
+ | |||
+ | //DATA// script is used to instantiate and create objects (groovy/ | ||
+ | For example, you may create a purchase order object to be posted to REST api: | ||
+ | | ||
+ | |||
+ | The order object " | ||
+ | | ||
---- | ---- | ||
+ | |||
==== EXECUTE ==== | ==== EXECUTE ==== | ||
Line 114: | Line 152: | ||
The executions currently are not counted in Dashboard stats. | The executions currently are not counted in Dashboard stats. | ||
+ | |||
+ | Executions can be archived/ | ||
+ | |||
+ | Historical executions can be accessed by clicking on //Past// link. |