# Differences

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

 — groupfields [2016/09/22 02:35] (current) Line 1: Line 1: + ===== Combinatorial Data Design with Mixed Strength ===== + + Combinatorial strength is defined as the degree of interactions that contribute to /result in a defect. + + For example for bank ATM transaction,​ the testing may focus on the accuracy of each transaction which depends on deposit check amount, cash withdraw amount, current account balance, restriction (max cash withdraw), etc. + + In the above example, it is reasonable to assume that all of the variables are critical and the accuracy of the transaction depends on all of them being correctly captured and the arithmetic operation is performed correctly. ​ In this case, we have full-combinatorial problem which will result in hundreds or thousands of test scenarios. + + However from the empirical result, it has been shown that majority of the software defects are caused by the interaction of two or three variables. ​ If your business can take the risk of such coverage, you may use pairwise or three-wise algorithm to produce the test scenarios which will be a very small fraction of the full-combinatorial test scenarios. ​ Often times you may find this compromise is worth the risk of not doing the full-combinatorial testing. + + You may also find that you have many variables and they don't necessarily all have same degree of interactions that may result in potential defects. ​ For example you may have 3 fields are highly dependent on each other and another 5 fields are dependent of each other, but interaction between the fields in field group 1 and field group 2 may be low.  ​ + + In this case, you will leave //​pairwise//​ as the default strength for the entire test data set but also group the fields by assigning them to the same //​Interaction//​ group. ​ Then in the //​Interaction Group Strength// section, select the right strength for each of the field group. ​ + + By doing so, you are instructing //​DataDesigner//​ to produce the test scenarios using //​pairewise//​ algorithm but then for each of the two //​Interaction//​ groups it will use the higher strength as you have selected for them. This will result in more test scenarios to be generated to ensure more combination variations are generated to produce more coverage among the fields in the same group.