Практикум по тест-дизайну

Содержание

Слайд 2

Зачем мы тестируем?

Зачем мы тестируем?

Слайд 3

Что такое техника тест-дизайна?

минимум усилий
максимум результата

Что такое техника тест-дизайна? минимум усилий максимум результата

Слайд 4

Соотношение усилий и результата

усилия

результат

Соотношение усилий и результата усилия результат

Слайд 5

Тесты – сеть для ловли багов

Тесты – сеть для ловли багов

Слайд 6

Когда остановиться?
Когда собрана полная коллекция чего-нибудь

Когда остановиться? Когда собрана полная коллекция чего-нибудь

Слайд 7

Разбиение на подобласти

Чтобы избежать ненужного тестирования, разбейте область входных значений на группы

Разбиение на подобласти Чтобы избежать ненужного тестирования, разбейте область входных значений на
эквивалентных тестов
Два теста считаются эквивалентными если они настолько похожи, что проверять оба бессмысленно
Выберите одно входное значение из каждого класса эквивалентности в качестве представителя целой группы значений
Парафраз Myers, Art of Software Testing

Слайд 8

Пример

Доменное имя должно содержать от двух до 63 символов, начинаться и заканчиваться

Пример Доменное имя должно содержать от двух до 63 символов, начинаться и
буквой латинского алфавита или цифрой. Промежуточными символами могут быть буквы латинского алфавита, цифры или дефис. Доменное имя не может содержать дефисы одновременно в 3-й и 4-й позициях.
Правила регистрации доменных имен в домене RU, http://www.cctld.ru/ru/docs/RU-2.php

Слайд 9

Пример

Длина имени:
0-1, 2-63, 64-∞
Символы:
буквы латинского алфавита, цифры, дефис, все остальные
Структура
в начале/конце стоит дефис/не

Пример Длина имени: 0-1, 2-63, 64-∞ Символы: буквы латинского алфавита, цифры, дефис,
дефис, в 3 и 4 позиции дефисы/не дефисы

Слайд 10

Интервалы

0

1

2

63

64

Интервалы 0 1 2 63 64

Слайд 11

Покрытие и разбиение

буквы

цифры

дефис

Покрытие и разбиение буквы цифры дефис

Слайд 12

Матрицы

Поз.3

Поз.4

Матрицы Поз.3 Поз.4

Слайд 14

Примеры «чисел» (границы встречаются)

перечисления (enumeration)
символы (character)
количество (разрешённых установок (пароль мин 3 раза), записей

Примеры «чисел» (границы встречаются) перечисления (enumeration) символы (character) количество (разрешённых установок (пароль
в БД, строк в файле, цветов, …)
длина (строки, имени файла, пути, текста в файле, слова, абзаца, …)
размер/объём (файла, памяти, экрана, окна, шрифта, пакета, …)
номер (версии), время (интервал), скорость (ввода данных, перемещения мыши), …

Слайд 15

Мы – нарушители границ!

На входе (то, что пользователь вводит)
На выходе (то, что

Мы – нарушители границ! На входе (то, что пользователь вводит) На выходе
пользователь видит)
Где-то глубоко внутри

Слайд 16

Фейс-контроль или вышибала?

Фейс-контроль или вышибала?

Слайд 17

Границы добра и зла

Физические (не может существовать)(строка -1 длинны)
Логические (не подходит по

Границы добра и зла Физические (не может существовать)(строка -1 длинны) Логические (не
смыслу)(при покупке кол. товара -1)
Технологические (не получается)(не описаны, память переполнена, ограничения ресурсов, в базе данных)
Произвольные (нельзя потому что нельзя)(длинна поля не >20символов)

Слайд 18

«Позитивные» и «негативные»

«Позитивные» и «негативные»

Слайд 19

Сколько тестов внутри?

буквы

цифры

дефис

Сколько тестов внутри? буквы цифры дефис

Слайд 20

Границы найдены. А все ли???

Границы найдены. А все ли???

Слайд 21

Зависимости между данными

Зависимости между данными

Слайд 22

Зависимости между данными

Зависимости между данными

Слайд 23

Зависимости между данными

Зависимости между данными

Слайд 24

Paint

1.Изменить размер изо. (-1, больше 99999, скопировать -1)
2. Файл – свойства (вводим

Paint 1.Изменить размер изо. (-1, больше 99999, скопировать -1) 2. Файл –
больше 9999, -1, буквы)
3. Изменить размер изо (сохранить размер 99999 и потом увеличить в процентах)

Слайд 25

Неизвестные зависимости

Случайные комбинации
Неслучайные комбинации
полный перебор (10 checkbox = 2^10 тестов)
покрытие комбинаций меньшей

Неизвестные зависимости Случайные комбинации Неслучайные комбинации полный перебор (10 checkbox = 2^10
размерности

Слайд 26

1. Взаимозависимые данные

1. Взаимозависимые данные

Слайд 27

2. Зависимость одного от другого

2. Зависимость одного от другого

Слайд 28

3. Неизвестные зависимости

Случайные комбинации
Неслучайные комбинации
полный перебор
покрытие комбинаций меньшей размерности

3. Неизвестные зависимости Случайные комбинации Неслучайные комбинации полный перебор покрытие комбинаций меньшей размерности

Слайд 29

Сокращение перебора: пример

Сокращение перебора: пример

Слайд 30

Сокращение перебора: пример
Три переменные:
«Что» - строка
«С учётом регистра» - булевская
«Направление» - перечислимый

Сокращение перебора: пример Три переменные: «Что» - строка «С учётом регистра» -
тип
Зависимости:
«Что» и «С учётом регистра»

Слайд 31

Сокращение перебора: пример
Тестовые значения:
«Что»
“нижний” (L), “ВЕРХНИЙ” (U), “ВпЕрЕмЕшКу” (M)
«С учётом регистра»
Да (Y),

Сокращение перебора: пример Тестовые значения: «Что» “нижний” (L), “ВЕРХНИЙ” (U), “ВпЕрЕмЕшКу” (M)
Нет (N)
«Direction»
Вверх (U), Вниз (D)

Слайд 32

Полный перебор

Полный перебор

Слайд 33

Сокращение перебора: пример
Перебор:
полный – все комбинации
все значения хотя бы по разу
все пары

Сокращение перебора: пример Перебор: полный – все комбинации все значения хотя бы
– каждый с каждым
все n-ки

Слайд 34

Все значения хотя бы по разу

Все значения хотя бы по разу

Слайд 35

Все пары (каждый с каждым)

Все пары (каждый с каждым)

Слайд 36

Сокращение перебора: пример
Четыре переменные:
«Что» - строка
«С учётом регистра» - булевская
«Направление» - перечислимый

Сокращение перебора: пример Четыре переменные: «Что» - строка «С учётом регистра» -
тип
«Есть в тексте» - булевская

Слайд 37

Все пары (каждый с каждым)

Все пары (каждый с каждым)

Слайд 38

Сокращение перебора: пример
Пять переменных:
«Что» - строка
«С учётом регистра» - булевская
«Направление» - перечислимый

Сокращение перебора: пример Пять переменных: «Что» - строка «С учётом регистра» -
тип
«Есть в тексте» - булевская
«Регистр совпадает» - булевская

Слайд 39

Все пары (каждый с каждым)

Все пары (каждый с каждым)

Слайд 40

Сокращение перебора: пример
Зависимости:
«Что» и «С учётом регистра»
«Что» и «Есть в тексте»
«Есть в

Сокращение перебора: пример Зависимости: «Что» и «С учётом регистра» «Что» и «Есть
тексте» и «Регистр совпадает»

Слайд 41

Все пары (каждый с каждым)

пар «Есть в тексте» (N) + «Рег.совп.» (*)

Все пары (каждый с каждым) пар «Есть в тексте» (N) + «Рег.совп.»
не существует
нет пары «Что» (L) + «Регистр совпадает» (N)

Слайд 42

Все пары (каждый с каждым)

Все пары (каждый с каждым)

Слайд 43

Сокращение перебора: пример
Шесть переменных:
«Что» - строка
«С учётом регистра» - булевская
«Направление» - перечислимый

Сокращение перебора: пример Шесть переменных: «Что» - строка «С учётом регистра» -
тип
«Есть в тексте» - булевская
«Регистр совпадает» - булевская
«Направление совпадает» - булевская

Слайд 44

Все пары (каждый с каждым)

Все пары (каждый с каждым)

Слайд 45

Ограничения подхода

Хорошо работает для независимых переменных
Но если переменные независимы, зачем проверять комбинации???

Ограничения подхода Хорошо работает для независимых переменных Но если переменные независимы, зачем проверять комбинации???

Слайд 46

Инструменты тестирования

Сайт http://pairwise.org/

Инструменты тестирования Сайт http://pairwise.org/
Имя файла: Практикум-по-тест-дизайну.pptx
Количество просмотров: 140
Количество скачиваний: 0