Upload
sqalab
View
923
Download
1
Embed Size (px)
Citation preview
© C
op
yright Sh
ow
eet.com
© C
op
yright Sh
ow
eet.com
Л 42
абораторная работа:
Как “сварить”
P 30.974 -3
+3 +5
15 2-8-6
airwise
Te 127.60 -2
+4 +6
52 2-8-18-18-6
sting и не пуститься
во все тяжкие
анташян M
К атерина
лаборант-тестировщик:
старший
© C
op
yright Sh
ow
eet.com
3
лан выполнения:
• Постановка задачи
• Методические рекомендации
(pairwise testing)
• Три способа «Варки»:
- Рецепт Уолтера Уайта
- Метод Брэндана Мэйхью
- Творческий подход Джесси Пинкмана
• Сравнение результатов
• Заключение
П 12
Как «сварить» Pairwise и не пуститься во все тяжкие
© C
op
yright Sh
ow
eet.com
4
остановка задачи
• Тестирование модуля по открытию банковского счёта
Как «сварить» Pairwise и не пуститься во все тяжкие
П 56
© C
op
yright Sh
ow
eet.com
5
абораторный интерфейс
Л 27
Как «сварить» Pairwise и не пуститься во все тяжкие
© C
op
yright Sh
ow
eet.com
6
абораторный интерфейс
Л 27
Как «сварить» Pairwise и не пуститься во все тяжкие
© C
op
yright Sh
ow
eet.com
7
ачальные условия: Н 84
Как «сварить» Pairwise и не пуститься во все тяжкие
Передача в UAT
Пересборка всей системы
Рефакторинг кода без изменений БЛ
© C
op
yright Sh
ow
eet.com
8
звестно
Функциональное тестирование модуля –
минимум 4 дня !
И 72
Как «сварить» Pairwise и не пуститься во все тяжкие
И 72
з опыта
Функциональное тестирование
такого модуля –
минимум 4 дня !
© C
op
yright Sh
ow
eet.com
9
граничения
1 день!
О 7
Как «сварить» Pairwise и не пуститься во все тяжкие
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
1 день!
© C
op
yright Sh
ow
eet.com
10
редварительный анализ
Как «сварить» Pairwise и не пуститься во все тяжкие
П 4
- от 18 до 60 +
программа лояльности
для клиентов
до 30 лет
П 4
редварительный анализ
18 - 60 + программа лояльности
для клиентов
до 30 лет
Всевозможных комбинаций:
6 × 4 × 2 × 2 =
© C
op
yright Sh
ow
eet.com
11
редварительный анализ
Как «сварить» Pairwise и не пуститься во все тяжкие
П 4
96 позитивных + N негативных + валидация…
© C
op
yright Sh
ow
eet.com
12
редварительный анализ
Необходимо:
успеть в сжатые сроки
сохранить тестовое покрытие
Как «сварить» Pairwise и не пуститься во все тяжкие
П 4
© C
op
yright Sh
ow
eet.com
13
Выбираем Pairwise Testing
Как «сварить» Pairwise и не пуститься во все тяжкие
4
М етодические рекомендации
© C
op
yright Sh
ow
eet.com
14
етодические рекомендации
Pairwise Testing – специальный
метод оптимизации составления
тест-кейсов.
Как «сварить» Pairwise и не пуститься во все тяжкие
М 13
© C
op
yright Sh
ow
eet.com
15
етодические рекомендации
Цель Pairwise Testing :
Убрать избыточные проверки
Выявить много багов
Как «сварить» Pairwise и не пуститься во все тяжкие
М 13
© C
op
yright Sh
ow
eet.com
16
о такое Pairwise Testing
Если применить Pairwise Testing к нашей задаче, то вместо 96 положительных тест-кейсов мы получим 24, что в 4 раза меньше!!!
Как «сварить» Pairwise и не пуститься во все тяжкие
Чт 13
Pairwise Testing
96
=>
24
© C
op
yright Sh
ow
eet.com
17
ри способа «варки»
• Рецепт Уолтера Уайта (математический)
• Метод Брэндана Мэйхью (метод “лентяя”)
• Подход Джесси Пинкмана (творческий)
Как «сварить» Pairwise и не пуститься во все тяжкие
Т 29
© C
op
yright Sh
ow
eet.com
18
ецепт Уолтера Уайта
Ингредиенты:
o Комбинаторика
o Линейная алгебра
o Немного магии
Как «сварить» Pairwise и не пуститься во все тяжкие
Р 42
© C
op
yright Sh
ow
eet.com
19
ецепт Уолтера Уайта
Как «сварить» Pairwise и не пуститься во все тяжкие
Р 42
© C
op
yright Sh
ow
eet.com
20
аблица сущностей Т 63
Признак РОС Sms - увед. Возраст Тип счёта
true yes 18 T
false no 23 N
- - 30 R
- - 31 S
- - 42 -
- - 60 -
Как «сварить» Pairwise и не пуститься во все тяжкие
© C
op
yright Sh
ow
eet.com
21
аблица тест-дизайна
Как «сварить» Pairwise и не пуститься во все тяжкие
T 63
Тесты Признак РОС Sms - увед. Возраст Тип счёта Результат
тест 1 true yes 18 T send
тест 2 false yes 18 T send
тест 3 true no 18 T send
тест 4 false no 18 T send
…
тест 96 false no 60 S S
96
© C
op
yright Sh
ow
eet.com
22
ецепт Уолтера Уайта
Как «сварить» Pairwise и не пуститься во все тяжкие
Р 42
© C
op
yright Sh
ow
eet.com
23
ецепт Уолтера Уайта
Как «сварить» Pairwise и не пуститься во все тяжкие
Р 42
© C
op
yright Sh
ow
eet.com
24
ыбор пары В 70
Как «сварить» Pairwise и не пуститься во все тяжкие
Возраст Тип счёта Признак РОС Sms - увед.
18 T true yes
23 N false no
30 R - -
31 S - -
42 - - -
60 - - -
© C
op
yright Sh
ow
eet.com
25
ртогональный массив
Как «сварить» Pairwise и не пуститься во все тяжкие
О 19
© C
op
yright Sh
ow
eet.com
26
ртогональная матрица?
Как «сварить» Pairwise и не пуститься во все тяжкие
О 19
© C
op
yright Sh
ow
eet.com
27
ртогональный массив
Как «сварить» Pairwise и не пуститься во все тяжкие
О 19
© C
op
yright Sh
ow
eet.com
28
ртогональный массив
Как «сварить» Pairwise и не пуститься во все тяжкие
О 19
© C
op
yright Sh
ow
eet.com
29
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
30
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
31
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
32
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
33
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
34
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
35
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
36
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
© C
op
yright Sh
ow
eet.com
37
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N true yes
тест 3 18 R true yes
тест 4 18 S true yes
тест 5 18 T false yes
тест 6 18 N false yes
тест 7 18 R false yes
тест 8 18 S false yes
тест 9 18 T true no
тест 10 18 N true no
тест 11 18 R true no
тест 12 18 S true no
тест 13 18 T false no
тест 14 18 N false no
тест 15 18 R false no
тест 16 18 S false no
тест 17 23 T true yes
тест 18 23 N true yes
тест 19 23 R true yes
тест 20 23 S true yes
тест 21 23 T false yes
тест 22 23 N false yes
тест 23 23 R false yes
тест 24 23 S false yes
тест 25 23 T true no
тест 26 23 N true no
тест 27 23 R true no
тест 28 23 S true no
тест 29 23 T false no
тест 30 23 N false no
тест 31 23 R false no
тест 32 23 S false no
тест 33 30 T true yes
тест 34 30 N true yes
тест 35 30 R true yes
тест 36 30 S true yes
тест 37 30 T false yes
тест 38 30 N false yes
тест 39 30 R false yes
тест 40 30 S false yes
тест 41 30 T true no
тест 42 30 N true no
тест 43 30 R true no
тест 44 30 S true no
тест 45 30 T false no
тест 46 30 N false no
тест 47 30 R false no
тест 48 30 S false no
тест 49 31 T true yes
тест 50 31 N true yes
тест 51 31 R true yes
тест 52 31 S true yes
тест 53 31 T false yes
тест 54 31 N false yes
тест 55 31 R false yes
тест 56 31 S false yes
тест 57 31 T true no
тест 58 31 N true no
тест 59 31 R true no
тест 60 31 S true no
тест 61 31 T false no
тест 62 31 N false no
тест 63 31 R false no
тест 64 31 S false no
тест 65 42 T true yes
тест 66 42 N true yes
тест 67 42 R true yes
тест 68 42 S true yes
тест 69 42 T false yes
тест 70 42 N false yes
тест 71 42 R false yes
тест 72 42 S false yes
тест 73 42 T true no
тест 74 42 N true no
тест 75 42 R true no
тест 76 42 S true no
тест 77 42 T false no
тест 78 42 N false no
тест 79 42 R false no
тест 80 42 S false no
тест 81 60 T true yes
тест 82 60 N true yes
тест 83 60 R true yes
тест 84 60 S true yes
тест 85 60 T false yes
тест 86 60 N false yes
тест 87 60 R false yes
тест 88 60 S false yes
тест 89 60 T true no
тест 90 60 N true no
тест 91 60 R true no
тест 92 60 S true no
тест 93 60 T false no
тест 94 60 N false no
тест 95 60 R false no
тест 96 60 S false no
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T true yes
тест 2 18 N false yes
тест 3 18 R true no
тест 4 18 S false no
тест 5 23 T false no
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true yes
тест 9 30 T true yes
тест 10 30 N false yes
тест 11 30 R true no
тест 12 30 S false no
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N false yes
тест 19 42 R true no
тест 20 42 S false no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false yes
тест 24 60 S true yes
24
© C
op
yright Sh
ow
eet.com
38
етод Брэндона Мэйхью
Как «сварить» Pairwise и не пуститься во все тяжкие
М 78
Понадобятся: утилита + “руки”
© C
op
yright Sh
ow
eet.com
39
нструменты:
Как «сварить» Pairwise и не пуститься во все тяжкие
И 55
© C
op
yright Sh
ow
eet.com
40
нструменты:
Как «сварить» Pairwise и не пуститься во все тяжкие
И 55
© C
op
yright Sh
ow
eet.com
41
етод Брэндона Мэйхью
Как «сварить» Pairwise и не пуститься во все тяжкие
М 78
М 78
© C
op
yright Sh
ow
eet.com
42
етод Брэндона Мэйхью
Как «сварить» Pairwise и не пуститься во все тяжкие
М 78
© C
op
yright Sh
ow
eet.com
43
одход Джесси Пикмана
Нужно:
общие представления о
Pairwise Testing
мозг
не заморачиваться
Как «сварить» Pairwise и не пуститься во все тяжкие
П 23
© C
op
yright Sh
ow
eet.com
44
одход Джесси Пикмана
Как «сварить» Pairwise и не пуститься во все тяжкие
П 23
«Полуслучайная» генерация тестов на основе здравого смысла
© C
op
yright Sh
ow
eet.com
45
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T
тест 2 18 N
тест 3 18 R
тест 4 18 S
тест 5 23 T
тест 6 23 N
тест 7 23 R
тест 8 23 S
тест 9 30 T
тест 10 30 N
тест 11 30 R
тест 12 30 S
тест 13 31 T
тест 14 31 N
тест 15 31 R
тест 16 31 S
тест 17 42 T
тест 18 42 N
тест 19 42 R
тест 20 42 S
тест 21 60 T
тест 22 60 N
тест 23 60 R тест 24 60 S
© C
op
yright Sh
ow
eet.com
46
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T false yes
тест 2 18 N false yes
тест 3 18 R false yes
тест 4 18 S false yes
тест 5 23 T false yes
тест 6 23 N true no
тест 7 23 R false yes
тест 8 23 S true no
тест 9 30 T true no
тест 10 30 N true yes
тест 11 30 R true no
тест 12 30 S true yes
тест 13 31 T false no
тест 14 31 N true no
тест 15 31 R false yes
тест 16 31 S true yes
тест 17 42 T true yes
тест 18 42 N true yes
тест 19 42 R true no
тест 20 42 S true no
тест 21 60 T false no
тест 22 60 N true no
тест 23 60 R false no тест 24 60 S true no
© C
op
yright Sh
ow
eet.com
47
Тесты Возраст Тип счёта Признак РОС Sms - увед.
тест 1 18 T false yes
тест 2 18 R false yes
тест 3 23 T false yes
тест 4 23 N true no
тест 5 23 R false yes
тест 6 23 S true no
тест 7 30 T true no
тест 8 30 N true yes
тест 9 30 R true no
тест 10 30 S true yes
тест 11 31 T false no
тест 12 31 N true no
тест 13 31 R false yes
тест 14 31 S true yes
тест 15 42 T true yes
тест 16 42 N true yes
тест 17 42 R true no
тест 18 42 S true no
тест 19 60 T false no
тест 20 60 N true no
тест 21 60 R false no тест 22 60 S true no
© C
op
yright Sh
ow
eet.com
48
авнение 3-х методов
• Рецепт Уолтера Уайта • Плюсы: хорошая отчётность, строгий математический подход
• Минусы: более трудозатратный, сложен в реализации для большого числа данных
• Метод Брэндана Мэйхью • Плюсы: не требует глубокого понимания, быстрый и лёгкий в
исполнении, хорош для большого числа данных
• Минусы: утилита может составить абсурдные тест-кейсы, не подходит для зависимых переменных
• Творческий подход Джесси Пинкмана • Плюсы: золотая середина по трудозатратам, позволяет составить
наиболее осознанные для бизнес-требований тест-кейсы, позволяет приоретизировать тестовые сценарии
• Минусы: сложен в реализации для большого числа данных, не подходит для строгой отчётности
Как «сварить» Pairwise и не пуститься во все тяжкие
Ср 40
Ср авнение
© C
op
yright Sh
ow
eet.com
49
авнение 3-х методов
Рецепт м. Уайта: наукоёмкий
× трудоёмкий
× много входных данных
× приоритезация
× осмысленные кейсы
Как «сварить» Pairwise и не пуститься во все тяжкие
Ср 40
Метод Мэйхью: быстрый/лёгкий
много входных данных
× приоритезация
× осмысленные кейсы
Подход Пинкмана: средней трудоёмкости
приоритезация
осмысленные кейсы
× много входных данных
× наукоёмкий
© C
op
yright Sh
ow
eet.com
50
итоге
Применение Pairwise Testing :
Существенно сокращает количество тест-кейсов
Обеспечивает хорошее тестовое покрытие
Позволяет на минимальном наборе тестов выявить наибольшее количество багов
Как «сварить» Pairwise и не пуститься во все тяжкие
В 13
© C
op
yright Sh
ow
eet.com
51
аключение
Как «сварить» Pairwise и не пуститься во все тяжкие
З 96
Изучили Pairwise Testing
Исследовали 3 метода применения
Убедились в эффективности
© C
op
yright Sh
ow
eet.com
52
uestions?
Как «сварить» Pairwise и не пуститься во все тяжкие
Q 41
Q 41
uestions?
© C
op
yright Sh
ow
eet.com
54
Как «сварить» Pairwise и не пуститься во все тяжкие
К 4