Although the buzzword “pairwise” popularity is no longer the same, interviews are still asked about what this test-design technique is. However, not all testers (both those who come for an interview, and those who conduct it) can clearly formulate the answer to the question of why we need combinatorial techniques in general and pairwise in particular (the vast majority of errors are still on atomic values of parameters and do not depend on others). The simple answer to this question, in my opinion, is to find bugs arising from explicit and implicit dependencies between parameters. For simple cases, the technique is unlikely to bring serious benefits, since they can be checked manually, and for a large number of parameters and complex dependencies between them, the number of tests is likely to be too large for manual testing. Therefore, the main use of combinatorial techniques (and, accordingly, tools that generate parameter combinations) is the automated generation of test data sets according to certain laws.SERIES_1: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, SERIES_2: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, NUMBER_1: 0,1,2,3,4,5,6,7,8,9 NUMBER_2: 0,1,2,3,4,5,6,7,8,9 NUMBER_3: 0,1,2,3,4,5,6,7,8,9 NUMBER_4: 0,1,2,3,4,5,6,7,8,9 NUMBER_5: 0,1,2,3,4,5,6,7,8,9 NUMBER_6: 0,1,2,3,4,5,6,7,8,9 {SERIES_1, SERIES_2, NUMBER_1, NUMBER_2, NUMBER_3, NUMBER_4, NUMBER_5, NUMBER_6} @ 1 Model 1 4 6 3 1 1 5 І Є 8 3 8 9 9 3 3 0 5 8 6 2 4 3 4 1 3 1 Є 4 6 7 3 1 4 0 2 4 5 2 0 Part of the simulation results SERIES_1: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, SERIES_2: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, NUMBER_1: 0,1,2,3,4,5,6,7,8,9,~A,~B,~C,~D,~E,~F NUMBER_2: 0,1,2,3,4,5,6,7,8,9,~A,~B,~C,~D,~E,~F NUMBER_3: 0,1,2,3,4,5,6,7,8,9,~A,~B,~C,~D,~E,~F NUMBER_4: 0,1,2,3,4,5,6,7,8,9,~A,~B,~C,~D,~E,~F NUMBER_5: 0,1,2,3,4,5,6,7,8,9,~A,~B,~C,~D,~E,~F NUMBER_6: 0,1,2,3,4,5,6,7,8,9,~A,~B,~C,~D,~E,~F Model 2 1 3 7 2 7 4 ~B 7 3 2 7 9 Є 8 8 2 0 ~A 8 Part of the simulation results SERIES_1: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, SERIES_2: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, NUMBER_1: 0,1,2,3,4,5,6,7,8,9 NUMBER_2: 0,1,2,3,4,5,6,7,8,9 NUMBER_3: 0,1,2,3,4,5,6,7,8,9 NUMBER_4: 0,1,2,3,4,5,6,7,8,9 NUMBER_5: 0,1,2,3,4,5,6,7,8,9 NUMBER_6: 0,1,2,3,4,5,6,7,8,9 INPUT: keyboard, screen keys, context menu, copy paste, drag-n-drop Model 3 0 8 0 8 5 9 keyboard 0 0 2 3 2 2 drag-n-drop 5 3 6 2 1 0 screen keys 3 9 4 1 6 7 context menu 9 9 0 7 4 4 copy paste Part of the simulation results AGE: 0-17, 18-21, 22-65, >=66 CHILDREN: Y, N SMOKING: Y, N WORK: 0-5, 6-10, >=11 {AGE, CHILDREN, SMOKING, WORK} @ 4 IF [AGE] = "0-17" THEN [WORK] <> ">=11"; IF [WORK] =">=11" THEN [AGE] = "0-17"; Model 4 Constraints Warning: Restrictive constraints. Output will not contain following values WORK: >=11 Tool response to conflicting requirements BROWSER: IE, Firefox, Chrome, Opera LANG: en, ru, ua OS: win, linux, android {BROWSER, LANG, OS} @ 1 IF [OS] = "linux" THEN [BROWSER] <> "IE"; Model 5 IE ua win Firefox en win Opera ua linux Chrome ru android Simulation results SERIES_1: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, SERIES_2: ,,,,,,Є,,,І,,,,,,,,,,,,,,,,,,, NUMBER_1: 0,1,2,3,4,5,6,7,8,9 NUMBER_2: 0,1,2,3,4,5,6,7,8,9 NUMBER_3: 0,1,2,3,4,5,6,7,8,9 NUMBER_4: 0,1,2,3,4,5,6,7,8,9 NUMBER_5: 0,1,2,3,4,5,6,7,8,9 NUMBER_6: 0,1,2,3,4,5,6,7,8,9 ENVIRONMENT: IE ua win, Firefox en win, Opera ua linux, Chrome ru android Model 6 AGE: 0-17, 18-21, 22-65, >=66 CHILDREN: 0, 1, 2, 3, 4, 5 SMOKING: Y, N WORK: 0-5, 6-10, >=11 IF [AGE] = "0-17" THEN [WORK] <> ">=11"; IF [AGE] = "0-17" THEN [CHILDREN] = 0; IF [AGE] = "18-21" THEN [CHILDREN] < 2; IF [CHILDREN] > 0 THEN [SMOKING] = "N"; IF [AGE] = ">=66" THEN [WORK] <> "0-5"; IF [AGE] = "0-17" OR [AGE] = "18-21" THEN [WORK] = "0-5"; Model 6 22-65 2 N 0-5 18-21 1 N 0-5 >=66 2 N 6-10 22-65 4 N 6-10 22-65 5 N 6-10 22-65 3 N 6-10 >=66 4 N >=11 22-65 5 N >=11 0-17 0 Y 0-5 >=66 3 N >=11 22-65 4 N 0-5 22-65 2 N >=11 18-21 0 Y 0-5 22-65 0 Y >=11 22-65 1 N 6-10 22-65 3 N 0-5 >=66 1 N >=11 0-17 0 N 0-5 >=66 0 Y 6-10 >=66 5 N >=11 22-65 5 N 0-5 Simulation results - 21 testSource: https://habr.com/ru/post/261381/
All Articles