Методология SBTM
Updated Jul 2026
Исследовательское тестирование — это не «бесцельные клики». Это одновременное проектирование тестов, их выполнение и обучение, направляемое хартией и ограниченное по времени. Сессионное управление тестированием (Session-Based Test Management, SBTM), формализованное Джеймсом Бахом, привносит структуру и подотчётность в исследовательское тестирование, не убивая его творческую силу.
Что такое исследовательское тестирование?
Исследовательское тестирование — это стиль тестирования, подчёркивающий личную свободу и ответственность отдельного тестировщика. Тестировщик одновременно проектирует тесты, выполняет их и изучает тестируемую систему — всё в одно и то же время. В отличие от скриптового тестирования, где вы следуете заранее определённым шагам, исследовательское тестирование адаптируется в реальном времени на основе ваших открытий.
Когда исследовательское тестирование наиболее эффективно
- Новые функции с нечёткими требованиями — вы изучаете функцию по мере её тестирования
- Области с высокой сложностью — слишком много путей для покрытия скриптовыми тестами
- После того как автоматизация отловила регрессии — исследование находит то, что пропускают скрипты
- Оценка удобства использования — скрипты не могут оценить, «ощущается ли интерфейс правильным»
- Релизы в условиях дефицита времени — исследование находит критические ошибки быстрее, чем написание скриптовых тестов
Когда скриптовые тесты лучше
- Регрессионное тестирование стабильных функций
- Тестирование на соответствие с аудируемыми доказательствами
- Data-driven тестирование с сотнями комбинаций входных данных
Фреймворк SBTM
SBTM включает три основных элемента: хартии, сессии и дебрифы.
Хартии
Хартия — это формулировка миссии для вашей тестовой сессии. Она отвечает на вопрос: «Что я тестирую и зачем?»
Хорошие хартии конкретны и ограничены:
Explore the checkout flow with international addresses
to discover currency conversion and tax calculation issues.
Explore the file upload feature with edge-case formats (.svg, .webp, 0-byte files)
to discover handling gaps and silent failures.
Explore the admin user management panel under concurrent usage
to discover race conditions in role assignment.
Плохие хартии расплывчаты:
- «Протестировать страницу входа» (слишком широко — что вы ищете?)
- «Найти баги» (это не хартия — это пожелание)
- «Протестировать всё в модуле настроек» (нет фокуса, нет временных рамок)
Составление эффективных хартий
Используйте формулу: Explore [цель] with [ресурсы/подход] to discover [информация].
| Компонент | Описание | Пример |
|---|---|---|
| Цель | Функция или область для тестирования | Процесс оформления заказа |
| Ресурсы/Подход | Конкретные данные, инструменты или техники | Международные адреса, нестандартные способы оплаты |
| Информация | Какого рода проблемы вы ищете | Ошибки конвертации валют, неправильный расчёт налогов |
Подготовьте 2-3 хартии перед сессией. Если вы закончили одну досрочно, переходите к следующей. Если обнаружили что-то неожиданное, измените направление — но задокументируйте отклонение.
Сессии
Сессия — это сфокусированный, непрерывный блок тестирования, обычно продолжительностью 60-90 минут. Временное ограничение обязательно: оно предотвращает превращение исследования в бесцельное блуждание.
Структура сессии
| Фаза | Продолжительность | Активность |
|---|---|---|
| Подготовка | 5-10 мин | Изучение хартии, подготовка окружения, загрузка тестовых данных |
| Исследование | 40-70 мин | Активное тестирование, ведение заметок, оформление багов |
| Завершение | 5-10 мин | Организация заметок, подготовка баг-репортов, подготовка к дебрифу |
Правила во время сессии
- Без прерываний. Относитесь к этому как к блоку сфокусированной работы. Закройте Slack, отключите уведомления.
- Придерживайтесь хартии. Если вы обнаружили что-то за пределами хартии, запишите это как новую хартию для будущей сессии.
- Ведите заметки непрерывно. Если вы перестали делать заметки, вы перестали заниматься исследовательским тестированием и начали заниматься случайным тестированием.
- Строго придерживайтесь тайм-бокса. Когда время вышло — остановитесь. Вы всегда можете запланировать ещё одну сессию.
Метрики сессий
Отслеживайте эти метрики по сессиям для понимания ваших усилий по тестированию:
| Метрика | Определение |
|---|---|
| Количество сессий | Общее количество проведённых сессий для данного релиза |
| Количество багов | Найденные дефекты за сессию |
| Покрытие хартий | Процент запланированных хартий, выполненных полностью |
| Соотношение тестирования и расследования | Время, потраченное на тестирование, по сравнению с расследованием багов |
| Плотность заметок сессии | Объём наблюдений за сессию (скудные заметки = несфокусированная сессия) |
Дебрифы
После каждой сессии проведите краткий (10-15 минут) дебриф с коллегой, тест-лидом или всей командой. Дебрифы служат трём целям:
- Обмен знаниями — что вы узнали о системе?
- Проверка результатов — баги реальны? Риски обоснованы?
- Корректировка стратегии — должна ли следующая сессия быть нацелена на другую область?
Вопросы для дебрифа
- Какая была ваша хартия?
- Что вы фактически тестировали?
- Что вы обнаружили?
- Что вас беспокоит из того, что вы не успели исследовать?
- На чём должна быть сфокусирована следующая сессия?
Эвристики для исследовательского тестирования
Эвристики — это ментальные приёмы, направляющие ваше исследование. Некоторые широко используемые:
SFDPOT (San Francisco Depot)
Создана Джеймсом Бахом:
| Мнемоника | Область фокуса | Примеры вопросов |
|---|---|---|
| Structure | Из чего состоит продукт? | Модули, страницы, компоненты, API |
| Function | Что он делает? | Функции, операции, обработка ошибок |
| Data | Какие данные обрабатывает? | Входные данные, выходные данные, хранимые данные, поток данных |
| Platform | От чего зависит? | ОС, браузер, сеть, оборудование |
| Operations | Как используется? | Рабочие процессы, персоны пользователей, паттерны использования |
| Time | Как поведение меняется со временем? | Таймауты, планирование, конкурентность, переходы состояний |
FEW HICCUPPS
Используется для оракулов консистентности (как решить, является ли что-то багом):
- Familiar problems — есть ли у продукта баги, которые вы видели в аналогичных продуктах?
- Explainability — можете ли вы объяснить поведение пользователю?
- World — соответствует ли это реальному миру?
- History — были ли в этой области баги ранее?
- Image — соответствует ли это бренду и стандартам качества компании?
- Comparable products — как конкуренты справляются с этим?
- Claims — соответствует ли это тому, что говорит документация?
- User expectations — будет ли типичный пользователь озадачен?
- Product — согласуется ли это с другими частями того же продукта?
- Purpose — выполняет ли это свою предназначенную цель?
- Standards — соответствует ли это применимым стандартам и нормативным требованиям?
SBTM в сравнении с ad-hoc тестированием
| Аспект | SBTM | Ad-hoc тестирование |
|---|---|---|
| Структура | Хартия + тайм-бокс + заметки | Отсутствует |
| Воспроизводимость | Заметки сессии позволяют восстановить ход | «Я нашёл этот баг как-то» |
| Подотчётность | Метрики показывают покрытие и затраченные усилия | Нет прозрачности относительно того, что было протестировано |
| Развитие навыков | Дебрифы совершенствуют технику со временем | Нет обратной связи |
| Отчётность для руководства | Количество сессий и показатели нахождения багов | «Мы тестировали два дня» |
SBTM не ограничивает творчество — он направляет его. Хартия задаёт направление, не диктуя каждый шаг.
Практическое упражнение
Спланируйте и проведите 30-минутную исследовательскую сессию:
- Выберите веб-приложение, которым вы пользуетесь регулярно (почтовый клиент, социальная сеть, интернет-магазин)
- Напишите хартию: «Explore [конкретная функция] with [конкретный подход] to discover [конкретный тип проблем]»
- Установите таймер на 30 минут
- Делайте заметки каждые 2-3 минуты: что пробовали, что наблюдали, какие вопросы возникли
- Когда таймер сработает, остановитесь и просмотрите свои заметки
- Напишите краткое резюме: найденные баги, области беспокойства, рекомендуемые следующие хартии
Ключевые выводы
- Исследовательское тестирование — это дисциплинированное исследование, а не случайные клики
- SBTM обеспечивает структуру через хартии, сессии с тайм-боксами и дебрифы
- Хорошие хартии конкретны: цель + подход + искомая информация
- Заметки сессии — это доказательства, отличающие исследование от ad-hoc тестирования
- Эвристики, такие как SFDPOT, направляют исследование, не ограничивая его
- Дебрифы создают цикл обратной связи, улучшающий тестирование со временем