Similar presentations:
Техники тест дизайна
1.
Техники тестдизайна
2.
Закрепление материалов лекции«Жизненный цикл дефекта»
3.
Содержание:• Что такое тест дизайн?
• Техника эквивалентного разбиения
• Техника анализа граничных
значений
• Таблица принятия решений
3
4.
Что такое тест дизайн?• Тест дизайн - это этап процесса
тестирования
ПО,
на
котором
проектируются и создаются тестовые
случаи (тест кейсы), в соответствии с
определёнными ранее критериями
качества и целями тестирования.
• Это разработка или придумывание
тестов.
5.
Что такое тест дизайн?6.
Что такое тест дизайн?Цели тест дизайна
• Придумать тесты, которые обнаружат
наиболее серьезные ошибки продукта.
• Минимизировать количество тестов,
необходимых для нахождения большинства
серьезных ошибок.
7.
Что такое тест дизайн?Основные навыки
1. Умение разделять систему на
составляющие (делать
декомпозицию).
2. Умение собирать и анализировать
требования к продукту.
3. Умение расставлять приоритеты.
4. Умение формулировать свои
мысли (письменно и устно)
5. Знание техник тест дизайна.
6. Умение применять их на практике.
8.
Что такое тест дизайн?Техники тест дизайна:
1. Техника эквивалентного разбиения
(Equivalence Partitioning Testing)
2. Техника анализа граничных значений
(Boundary Value Testing)
3. Попарное тестирование (Pairwise testing)
4. Тестирование состояний и переходов
(State-Transition Testing)
5. Тестирование по таблице принятия решений
(Decision Table Testing)*
6. …
9.
Эквивалентное разбиениеEquivalence Classes (Класс эквивалентности) – это
входные (а иногда и выходные) данные, которые
обрабатываются приложением одинаково или
обработка которых приводит к одному и тому же
результату.
Equivalence Class Testing – это техника тест
дизайна, способная сократить число тестов путем
выбора одного теста из эквивалентного набора.
10.
Эквивалентное разбиениеОсновные правила:
1. Определите классы эквивалентности.
2. На каждый класс эквивалентности
сделайте хотя бы 1 тест-кейс.
11.
Эквивалентное разбиениеПредставим, что мы тестируем модуль для
отдела кадров, который определяет брать на
работу кандидата или нет, базируясь на возрасте
кандидата.
Условия такие:
0–15 : Не нанимать
16–18 : Можем нанять только на part time
19–55 : Можем нанять на full time
56–99 : Не нанимать
11
12.
Эквивалентное разбиениеВыделим классы эквивалентности:
Класс эквивалентности NO: 0-15.
Класс эквивалентности PART: 16-18.
Класс эквивалентности FULL: 19-55.
Класс эквивалентности NO: 56-99.
Класс эквивалентности NEG1: 0 бесконечность
Класс эквивалентности NEG2: 100 +
бесконечность
Класс эквивалентности NEG3: буквы
Класс эквивалентности NEG4: спецсимволы
И т.д.
13.
Анализ граничных значенийBoundary Value Testing (техника анализа
граничных значений) наиболее известная и
простая
техника
тест
дизайна,
призванная помогать рядовому тестировщику
выбирать наиболее эффективные значения для
тестирования. Эта техника применима на всех
уровнях тестирования граничных значений.
13
14.
Анализ граничных значенийОсновные правила:
1. Определите диапазон значений (как
правило это класс эквивалентности).
2. Определите границы диапазонов.
3. На каждую границу создайте 3 тест
кейса:
проверяющий значение границы;
на значение ниже границы;
на значение выше границы.
14
15.
Анализ граничных значенийПредставим, что мы тестируем модуль для
отдела кадров, который определяет брать на
работу кандидата или нет, базируясь на возрасте
кандидата.
Условия такие:
0–15 : Не нанимать
16–18 : Можем нанять только на part time
19–55 : Можем нанять на full time
56–99 : Не нанимать
15
16.
Анализ граничных значенийКласс эквивалентности NO: 0-15.
Класс эквивалентности PART: 16-18.
Класс эквивалентности FULL: 19-55.
Класс эквивалентности NO: 56-99.
Класс эквивалентности NEG1: -100
Класс эквивалентности NEG2: 500
Значения, на которые мы должны составить тест кейсы:
• {-1, 0, 1},
• {14, 15, 16},
• {17, 18, 19},
• {18, 19, 20},
• {54, 55, 56},
• {55, 56, 57},
• {98, 99, 100}
16
17.
Таблица принятия решенийТаблица принятия решений (decision table) –
великолепный инструмент для упорядочения
сложных бизнес требований, которые должны
быть реализованы в продукте. В таблицах
решений
представлен
набор
условий,
одновременное выполнение которых должно
привести к определенному действию.
17
18.
Таблица принятия решенийЗначения 1
Значения 2
…
Значения p
Сущность
Свойство-1
Свойство-2
…
Свойство-m
Действия
Действие-1
Действие-2
…
Действие-n
18
19.
Таблица принятия решенийПредставим, что тестируем приложение для
страховой компании. Это приложение вычисляет
скидку на страхование автомобилей, в
зависимости от того, был ли водитель хорошим
студентом и состоит ли он в браке.
Значения 1
Значения 2
Значения 3
Значения 4
Состоит в
браке?
Yes
Yes
No
No
Хороший
студент?
Yes
No
Yes
No
Сущность
19
20.
Таблица принятия решенийВ зависимости от комбинации значений наших
сущностей у нас вычисляется скидка - то есть
скидка - это результат взаимодействия
сущностей, то есть - это и есть наше действие.
Значения 1
Значения 2
Значения 3
Значения 4
Состоит в
браке?
Yes
Yes
No
No
Хороший
студент?
Yes
No
Yes
No
60
25
50
0
Сущность
Действия
Скидка ($)
20
21.
Таблица принятия решенийДелать тест-кейсы по Decision table очень легко создайте как минимум 1 тест кейс на каждое
правило. Вот так:
Test Case ID
Состоит в
браке?
Хороший
студент?
Ожидаемый
результат
TC1
Yes
Yes
скидка = 60
TC2
Yes
No
скидка = 25
TC3
No
Yes
скидка = 50
TC4
No
No
скидка = 0
21
22.
Таблица принятия решенийПример: есть форум, в котором можно оставлять
сообщения. Если пользователь имеет права
админа, то сообщение на форум будет
отображаться сразу. Если нет – сообщение не
будет сразу отображаться (уходит модератору).
Кроме этого есть чекбокс «Сохранить», которое
будет сохранять сообщение в личный кабинет.
Если пользователь не залогинен на форуме, то при
отправке сообщения его будет перенаправлять на
страницу логина.
Задача: составить тест кейсы на основе таблицы
принятия решений
22
23.
Спасибо за внимание!Жду Ваших вопросов
23