17
Практики тест-дизайна: эквивалентное разделение Workshop

CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Embed Size (px)

Citation preview

Page 1: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Практики тест-дизайна: эквивалентное разделение

Workshop

Page 2: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Куда жаловаться? vestfalka

vestfalka.blogspot.com

tzinchenko.moikrug.ru

[email protected]

Page 3: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Основные техники тест-дизайна

• Equivalence Partitioning

• Boundary Value Analysis

• Cause/Effect• Error Guessing• Exhaustive Testing

Page 4: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Тестируемое приложение

http://www.russianpost.ru/autotarif/SelautotarifRus.aspx

Page 5: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Что мы делаем?

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

• Выбор конкретных значений из подобластей

Page 6: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Класс эквивалентности - это

множество, все элементы которого программа обрабатывает одинаково.

Page 7: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

С чего начать?

• Определение требований (формализованных или нет)

• Определение характеристик параметра

• Выделение классов эквивалентности для каждой характеристики

Page 8: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Продолжаем тестирование!

Page 9: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Выделяем классы эквивалентности

Если сущность определена диапазоном значений, то для нее выделяется:

- сам диапазон;- значения слева от

диапазона;- значения справа от

диапазона.

Page 10: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Выделяем классы эквивалентности

Если сущность определена набором каких-либо данных, то выделяют:

- класс валидных данных;

- класс невалидных данных.

Page 11: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Выделяем классы эквивалентности

Если сущность определена каким-либо условием:

- класс, выполняющий условие;

- класс, не выполняющий условие.

Page 12: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Доразбиение классов эквивалентности

Подобласти значений выделяются:

- по очевидным различиям;

- по данным, которые чаще всего вводит пользователь;

- произвольно.

Page 13: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Еще виды классов эквивалентности

Линейные классы эквивалентности

Нелинейные классыэквивалентности

Истинные нелинейные классы

Ложные нелинейные классы

Page 14: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Что может пойти не так?

• Слишком много классов эквивалентности

• Слишком мало классов эквивалентности

• Неверные классы эквивалентности

Page 15: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Выбираем значения

• Случайным образом

• Пропорциональное разбиение

• Основываясь на рисках

• Анализ граничных значений

• Специальные значения

• Сочетание невалидных значений

Page 16: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

Поиграем?

1) Придумать (или вспомнить) по одному слову на каждую букву алфавита (из пройденного материала)

2) За каждое слово: +1 балл

Page 17: CodeFest 2012. Зинченко Т. — Практики тест-дизайна: разделяй и властвуй!

УРА!!

Вопросы?Пожелания?Предложения?