Что такое метод дерева классификации?
Метод дерева классификации (Classification Tree Method, CTM) — визуальная техника тест-дизайна, предоставляющая структурированный способ декомпозиции входного домена объекта тестирования в дерево классификаций и классов, а затем генерацию тест-кейсов путём выбора комбинаций из дерева.
Ключевые концепции
- Объект тестирования: Корневой узел — система, функция или фича, которую тестируют
- Классификация: Релевантный для тестирования аспект или измерение (категория параметра)
- Класс: Конкретное значение или раздел внутри классификации
- Таблица комбинаций: Матрица под деревом, показывающая какие классы комбинируются в тест-кейсы
Структура дерева классификации
Дерево разбивает «Онлайн-оплату» на три классификации (Способ оплаты, Сумма, Валюта), каждая со своими классами.
Построение дерева: пошагово
Шаг 1: Определить объект тестирования и его релевантные аспекты.
Шаг 2: Для каждого аспекта создать узел классификации.
Шаг 3: Под каждой классификацией перечислить возможные классы (значения/разделы).
Шаг 4: Добавить уточнения — классы могут иметь подклассификации при необходимости.
Шаг 5: Построить таблицу комбинаций для выбора тест-кейсов.
Таблица комбинаций
Под деревом создайте таблицу где:
- Столбцы = тест-кейсы
- Строки = классы (листовые узлы)
- Метки (X или точка) показывают, какой класс выбран для каждого тест-кейса
| TC1 | TC2 | TC3 | TC4 | TC5 | |
|---|---|---|---|---|---|
| Кредитная карта | X | X | |||
| PayPal | X | X | |||
| Банк. перевод | X | ||||
| Малая | X | X | |||
| Средняя | X | X | |||
| Большая | X | ||||
| USD | X | X | |||
| EUR | X | X | |||
| GBP | X |
Каждый тест-кейс выбирает ровно один класс из каждой классификации.
CTM vs. Эквивалентное разбиение
CTM основывается на EP, но добавляет:
- Визуальную структуру — дерево делает декомпозицию наглядной
- Иерархическое уточнение — классы можно далее подразделять
- Явный выбор комбинаций — таблица показывает, какие именно комбинации вы тестируете
Когда использовать CTM
- Сложные входные домены с множеством связанных параметров
- Когда нужен визуальный обзор пространства тестирования
- Когда стейкхолдеры должны визуально проверить покрытие
- Как дополнение к попарному тестированию для выбора осмысленных комбинаций
Продвинутые деревья классификации
Иерархическое уточнение
Классы могут иметь подклассификации, создавая более глубокие деревья:
Комбинирование CTM с попарным тестированием
Для больших деревьев исчерпывающая комбинация всех классов порождает слишком много тест-кейсов. Применяйте попарный выбор к таблице комбинаций:
- Постройте дерево классификации
- Перечислите все классы листовых узлов как параметры
- Подайте на вход PICT или сгенерируйте попарные комбинации вручную
- Заполните таблицу комбинаций попарно выбранными тест-кейсами
Реальный пример: Поиск в интернет-магазине
Объект теста: Поиск товаров
Классификации:
├── Поисковый запрос
│ ├── Одно слово
│ ├── Несколько слов
│ ├── Со спецсимволами
│ └── Пустой
├── Фильтры
│ ├── Без фильтров
│ ├── Фильтр категории
│ ├── Фильтр ценового диапазона
│ └── Несколько фильтров
├── Сортировка
│ ├── По релевантности
│ ├── Цена (по возрастанию)
│ ├── Цена (по убыванию)
│ └── Новинки
└── Пагинация
├── Первая страница
├── Средняя страница
└── Последняя страница
При 4 x 4 x 4 x 3 = 192 исчерпывающих комбинациях попарное даёт примерно 16-20 тест-кейсов.
Упражнение: Постройте дерево классификации
Сценарий: Вы тестируете функцию экспорта файлов:
- Формат: PDF, CSV, Excel, JSON
- Диапазон данных: Последние 7 дней, 30 дней, Пользовательский, Все данные
- Содержимое: Только сводка, Подробное, С графиками
- Доставка: Скачивание, Email, Облачное хранилище
Задания:
- Нарисуйте дерево классификации
- Создайте таблицу комбинаций минимум с 6 тест-кейсами
- Убедитесь, что каждый класс появляется хотя бы в одном тест-кейсе
Подсказка
Наибольшая классификация имеет 4 класса, поэтому нужно минимум 4 тест-кейса. Для покрытия всех классов понадобится 4-6 тест-кейсов.
Решение
Таблица комбинаций (6 тест-кейсов, все классы покрыты):
| TC1 | TC2 | TC3 | TC4 | TC5 | TC6 | |
|---|---|---|---|---|---|---|
| X | X | |||||
| CSV | X | |||||
| Excel | X | |||||
| JSON | X | X | ||||
| 7 дней | X | X | ||||
| 30 дней | X | |||||
| Пользоват. | X | X | ||||
| Все | X | |||||
| Сводка | X | X | ||||
| Подробное | X | X | ||||
| С графиками | X | X | ||||
| Скачивание | X | X | ||||
| X | X | |||||
| Облако | X | X |
6 тестов вместо 4 x 4 x 3 x 3 = 144 исчерпывающих.
Советы профессионала
- Чётко определите объект тестирования. Размытый корень ведёт к размытому дереву.
- Держите классификации независимыми. Если две классификации сильно зависимы, рассмотрите их объединение или добавьте ограничения.
- Используйте CTM для коммуникации. Визуальное дерево отлично подходит для встреч по ревью — стейкхолдеры быстро заметят пропущенные аспекты.
- Уточняйте итеративно. Начните с простого дерева, затем добавляйте подклассификации.
- Отмечайте невалидные комбинации. В таблице помечайте невозможные комбинации, чтобы не генерировать бесполезные тест-кейсы.