Тема 3 Техники тест-дизайна
Техники «Чёрного ящика»
1.Эквивалентное разбиение (разделение)
2.Анализ граничных значений
3.Таблица принятия решений
Таблица принятия решений
Таблица принятия решений
4.Тестирование состояний и переходов
Диаграмма для объекта Билет
5.Тестирование на основе пользовательских сценариев
Пользовательские сценарии
Техники «Белого ящика»
Алгоритм вычисления стоимости заказа
1.Покрытие операторов
Алгоритм вычисления стоимости заказа
2.Покрытие ветвей
Алгоритм вычисления стоимости заказа
3.Покрытие условий
4.Покрытие комбинаций условий
Алгоритм вычисления стоимости заказа
Техники, основанные на опыте
1.Предугадывание ошибок
2.Исследовательское тестирование
Эти техники незаменимы, когда:
1.19M
Категория: ПедагогикаПедагогика

Техники тест-дизайна

1. Тема 3 Техники тест-дизайна

2.

• Тест-дизайн – это процесс
создания тестовых случаев и
наборов тестов на основе
выбранных подходов и
спецификаций системы.
• Цель – выявить дефекты
максимально эффективно
при минимальных затратах.

3.

Техники
тест-дизайна
Техники
«Чёрного
ящика»
Техники
«Белого
ящика»
Техники,
основанные
на опыте

4. Техники «Чёрного ящика»

5. 1.Эквивалентное разбиение (разделение)

Метод, при котором входные
данные делятся на группы
(классы эквивалентности),
внутри которых система должна
вести себя одинаково.

6.

Классы эквивалентности
для поля ввода кол-ва билетов
Тестовые случаи
для поля ввода кол-ва билетов
• Числа от 1 до 10
• Числа больше 10
• Числа меньше 1
• Буквы
• Спецсимволы
• Ввести 3
• Ввести 13
• Ввести -2
• Ввести букву а
• Ввести символ !

7. 2.Анализ граничных значений

Метод, при котором из каждого
упорядоченного класса
эквивалентности выбираются
граничные значения, а также
значения на шаг меньше и на
шаг больше этих границ для
проверки корректной обработки
переходов между классами

8.

Классы эквивалентности
для поля ввода кол-ва билетов
• Числа от 1 до 10
• Числа больше 10
• Числа меньше 1
• Буквы
• Спецсимволы
Границы
классов эквивалентности
Тестовые случаи
для поля ввода кол-ва билетов
•1
• 10
• Ввести 0
• Ввести 1
• Ввести 2
• Ввести 9
• Ввести 10
• Ввести 11

9. 3.Таблица принятия решений

Метод, при котором условия и
ожидаемые реакции (или
действия) системы
представляются в виде таблицы,
что позволяет структурированно
проверить все значимые
комбинации входных данных и
убедиться в корректности
поведения системы

10. Таблица принятия решений

11. Таблица принятия решений

12.

13.

14. 4.Тестирование состояний и переходов

Метод, при котором
проверяются все возможные
состояния системы и переходы
между ними для выявления
ошибок, связанных со сменой
состояний.

15. Диаграмма для объекта Билет

Выбрать кол-во >0
Билета
нет
Вернуть
билет
Билет
выбран
Выбрать кол-во =0
Билет в
корзине
Билет
оплачен
Оплатить заказ
Добавить
в корзину

16. 5.Тестирование на основе пользовательских сценариев

Метод, в котором тесты
разрабатываются на основе
конкретных сценариев
использования продукта, что
позволяет оценить
функциональность и удобство
использования системы с точки
зрения конечного пользователя.

17. Пользовательские сценарии

Сценарий 1
Сценарий 2
1. пользователь регистрируется
впервые
2. выбирает билеты
3. применяет купон
4. оплачивает заказ
1. пользователь заходит в
систему
2. меняет кол-во билетов в
корзине
3. оплачивает заказ

18. Техники «Белого ящика»

19. Алгоритм вычисления стоимости заказа

начало
coupon =
SUMMER20
adult
сhild
нет
s = adult*1500
+child*800
coupon
=WELCOME
10
нет
coupon
total_s = s*(1-d)
d=0
конец
да
d = 0.2
да
d = 0.1

20. 1.Покрытие операторов

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

21. Алгоритм вычисления стоимости заказа

начало
coupon =
SUMMER20
adult
сhild
нет
s = adult*1500
+child*800
coupon
=WELCOME
10
нет
coupon
total_s = s*(1-d)
d=0
конец
да
d = 0.2
да
d = 0.1

22. 2.Покрытие ветвей

Метод требует, чтобы в наборе
тестов каждая возможная ветвь
(исход) условного оператора
была выполнена хотя бы один
раз

23. Алгоритм вычисления стоимости заказа

начало
coupon =
SUMMER20
adult
сhild
нет
s = adult*1500
+child*800
coupon
=WELCOME
10
нет
coupon
total_s = s*(1-d)
d=0
конец
да
d = 0.2
да
d = 0.1

24. 3.Покрытие условий

• Метод требует, чтобы в наборе
тестов каждое элементарное
логическое условие приняло
значения True и False
coupon =
SUMMER20
да
d = 0.2
нет
coupon
=WELCOME10 or
adult>10
нет
да
d = 0.1

25. 4.Покрытие комбинаций условий

• Метод требует, чтобы в наборе
тестов были проверены все
возможные комбинации знач
ений элементарных условий

26. Алгоритм вычисления стоимости заказа

начало
coupon =
SUMMER20
adult
сhild
нет
s = adult*1500
+child*800
coupon
=WELCOME
10
нет
coupon
total_s = s*(1-d)
d=0
конец
да
d = 0.2
да
d = 0.1

27. Техники, основанные на опыте

28. 1.Предугадывание ошибок

Целенаправленное создание тестовых сценариев, которые, по
мнению тестировщика, с наибольшей вероятностью вызовут сбой.
Это предугадывание "любимых" ошибок разработчиков.

29. 2.Исследовательское тестирование

Это одновременное изучение системы, проектирование тестов и их
выполнение.
Это не "беспорядочное кликанье", а целенаправленное, но
неформальное исследование.

30. Эти техники незаменимы, когда:

• Нет времени на полноценное формальное тестирование
• Нет спецификаций или они очень неполные
• Нужно быстро найти "слабые места" системы после
формального тестирования
• Требуется имитировать реальное поведение пользователей
• Система слишком сложна для полного моделирования
English     Русский Правила