Test Design Technics

Post on 16-Apr-2017

3.087 views 1 download

Transcript of Test Design Technics

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

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

Методы генерирования тестов Методы отбора тестов

Методы генерирования тестов

Черновик-чистовик

Методы генерирования тестов

Матричная трассировка — составление таблиц, состоящих из тестовых сценариев и параметров для них

Используется, когда много параметров для ввода

Матричная трассировка Можно выбрать белорусские, российские рубли и

украинские гривны. Есть старые и новые купюры. БР — старые и

новые, РР — только старые, УГ — только новые Старые купюры могут быть 100, 500, 50000,

100000. Новые — 1000, 10000, 200000. При этом БР — 50000, 10000, 100000, 200000. РР и УГ— 100, 500, 1000

За РР и БР можно взять кредит или открыть депозит.

За УГ и РР можно купить облигации или обменять на БР

Матричная трассировка

БР РР УГ

старые БС РС

новые БН УН

Можно выбрать белорусские, российские рубли и украинские гривны.

Есть старые и новые купюры. БР — старые и новые, РР — только старые, УГ — только новые

100 500 50000 100000

БС БС5 БС1

РС РС1 РС5

Матричная трассировка

Старые купюры могут быть 100, 500, 50000, 100000. При этом БР — 50000, 10000, 100000, 200000. РР и УГ— 100, 500, 1000

Матричная трассировка

1000 10000 200000

БН БН1 БН2

УН УН1

Новые — 1000, 10000, 200000. При этом БР — 50000, 10000, 100000, 200000. РР и УГ— 100, 500, 1000

Матричная трассировка

Кредит Депозит Обмен Облигации

БС5 х х

БС1 х х

РС1 х х х х

РС5 х х х х

БН1 х х

БН2 х х

УН1 х х

За РР и БР можно взять кредит или открыть депозит.

За УГ и РР можно купить облигации или обменять на БР

Методы генерирования тестов

Блок-схемы

Блок-схемы - блок начало-конец - блок действия - логический блок, блок условия - ввод/вывод данных - соединитель - комментарий

Блок-схемы

Методы генерирования тестов Интеллек-карты (Mind maps) Правила создания mind-map достаточно просты:

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

Для тестирования применяю mind-map в следующих ролях: как представление требований в понятном виде, документацию и чек-лист.

Интеллект-карты

Интеллект-карты

Дерево принятия решений

Методы генерирования тестов

Тестирование состояний переходов: 1. Диаграмма переходов состояний 2. Таблица переходов состояний

Диаграмма переходов состояний

Таблица переходов состоянийТекущее состояние Событие Действие Следующее

состояниеnull giveInfo startPayTimer Madenull payMoney - null

null print - null

null giveTicket - null

null cancel - null

null PayTimerExpires - null

Made giveInfo - Made

Made payMoney - PaidMade print - Made

Made giveTicket - Made

Made cancel - Can-CustMade PayTimerExpires - Can-Nonpay

Методы генерирования тестов

Таблица решений (decision table) - описывают логику приложения основываясь сущностях(свойствах/условиях) состояния системы.

Таблица решенийПравило 1 Правило 2 ... Правило р

Сущность

Свойство 1

Свойство 2

...

Свойство m

Действие

Действие 1

Действие 2

...

Действие n

Таблицы решений Сущность(conditions) от 1 до m - это разные

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

Действия(actions) от 1 до n - это действия которые могут произойти с указанной комбинацией сущностей, в зависимости от комбинации всех входных данных сущностей, действия принимают нужные значения.

Каждое правило определяет уникальный набор входных данных всех свойств, которые приводят к исполнению конкретных действий.

Таблицы решений

Таблицы решений1 2 3 4

Сущность

Введены все данные?

Введен ID?

Выбран Modify?

Выбран Delete?

Действие

Создать нового

студента

Отредактировать

Удалить

Таблицы решений1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Сущность

Введены все

данные?

нет нет нет нет нет нет нет нет да да да да да да да да

Введен ID?

нет нет нет нет да да да да нет нет нет нет да да да да

Выбран Modify?

нет нет да да нет нет да да нет нет да да нет нет да да

Выбран Delete?

нет да нет да нет да нет да нет да нет да нет да нет да

Действие

Создать нового

студента

нет нет нет нет нет нет нет нет да нет нет нет нет нет нет нет

Отредактировать

нет нет нет нет нет нет да нет нет нет да нет нет нет нет нет

Удалить нет нет нет нет нет да нет нет нет нет нет нет нет нет нет нет

Таблицы решений1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Сущность

Введены все

данные?

нет нет нет нет нет нет нет нет да да да да да да да да

Введен ID?

нет нет нет нет да да да да нет нет нет нет да да да да

Выбран Modify?

нет нет да да нет нет да да нет нет дат да нет нет да да

Выбран Delete?

нет да нет да нет да нет да нет да нет да нет да нет да

Действие

Создать нового

студента

нет нет нет нет нет нет нет нет да нет нет нет нет нет нет нет

Отредактировать

нет нет нет нет нет нет да нет нет нет да нет нет нет нет нет

Удалить нет нет нет нет нет да нет нет нет нет нет нет нет нет нет нет

Таблицы решений1 2 3 4 5 6 7 8 9 10 11 12

Сущность

Введены все

данные?

нет нет нет нет нет нет да да да да да да

Введен ID?

нет нет нет да да да нет нет нет да да да

Выбран Modify?

нет нет да нет нет да нет нет дат нет нет да

Выбран Delete?

нет да нет нет да нет нет да нет нет да нет

Действие

Создать нового

студента

нет нет нет нет нет нет да нет нет нет нет нет

Отредактировать

нет нет нет нет нет да нет нет да нет нет нет

Удалить нет нет нет нет да нет нет нет нет нет нет нет

Таблицы решенийТест

кейс 1Тест

кейс 2Тест

кейс 3Тест

кейс 4Тест

кейс 5Тест

кейс 6Тест

кейс 7Тест

кейс 8Тест

кейс 9Тест кейс 10

Тест кейс 11

Тест кейс 12

Входные данные

Введены все данные?

нет нет нет нет нет нет да да да да да да

Введен ID? нет нет нет да да да нет нет нет да да да

Выбран Modify?

нет нет да нет нет да нет нет дат нет нет да

Выбран Delete?

нет да нет нет да нет нет да нет нет да нет

Ожидаемый результат

Создать нового

студента

нет нет нет нет нет нет да нет нет нет нет нет

Отредактировать

нет нет нет нет нет да нет нет да нет нет нет

Удалить нет нет нет нет да нет нет нет нет нет нет нет

Методы генерирования тестов Исчерпывающее тестирование (exhaustive

testing) - тестирование программы на всех возможных комбинациях входных значений переменных. Обеспечивает обнаружение всех возможных ошибок.

Но практически нереализуемо даже для очень небольших программ.

Методы отбора тестов Эквивалентные классы Граничные значения Domain тестирование

Методы отбора тестов

Оценка риска — получение информации об продукте и приоритетности каждой из его функций

Методы отбора тестов Попарное тестирование (pair-wise testing) -

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

Pair-wise testing

Допустим, какое-то значений (налог) для человека рассчитывается на основании его пола, возраста и наличия детей - получаем три входных параметра, для каждого из которых для тестов выбираем каким-то образом значения. Например: пол - мужской или женский; возраст - до 25, от 25 до 60, более 60; наличие детей - да или нет

Pair-wise testing№ Пол Возраст Дети1 мужчина До 25 Дети есть2 женщина До 25 Дети есть3 мужчина 25-60 Дети есть4 женщина 25-60 Дети есть5 мужчина Старше 60 Дети есть6 женщина Старше 60 Дети есть7 мужчина До 25 Детей нет8 женщина До 25 Детей нет9 мужчина 25-60 Детей нет10 женщина 25-60 Детей нет11 мужчина Старше 60 Детей нет12 женщина Старше 60 Детей нет

Pair-wise testing№ Пол Возраст Дети

1 Мужчина До 25 Детей нет

2 Женщина До 25 Дети есть

3 Мужчина 25-60 Дети есть

4 Женщина 25-60 Детей нет

5 Мужчина Старше 60 Детей нет

6 Женщина Старше 60 Дети есть

Спасибо за внимание!