Что такое тестирование переходов состояний?
- Как тестировать статусы заказа?
- Что такое диаграмма состояний в тестировании?
Если у объекта есть статусы (заказ, заявка, аккаунт), рисуем состояния и переходы между ними и проверяем каждый переход — и недопустимые тоже.
- Состояние, событие, переход, результат
- Проверяем: все допустимые переходы и попытки запрещённых
А ещё Пример — заказ: создан → оплачен → отправлен → доставлен; отмена — только до отправки
Подробно
Техника подходит для всего, что живёт по статусам: заказы, заявки, тикеты, блокировка аккаунта после неудачных попыток входа.
Шаги:
- Выписать состояния: «создан», «оплачен», «отправлен», «доставлен», «отменён».
- Выписать события, которые меняют состояние: оплата, отправка, отмена.
- Нарисовать диаграмму или таблицу переходов: из какого состояния по какому событию куда попадаем.
- Составить проверки:
- каждый допустимый переход;
- недопустимые переходы — система должна их запретить (отменить доставленный заказ);
- цепочки переходов, близкие к реальным сценариям.
Таблица переходов (строки — состояния, столбцы — события) сразу показывает, где в требованиях не определено поведение.
Пример
Блокировка входа: после трёх неудачных попыток аккаунт блокируется на 15 минут. Состояния: «активен», «1 ошибка», «2 ошибки», «заблокирован». Проверки: успешный вход сбрасывает счётчик; третья ошибка блокирует; вход с верным паролем во время блокировки запрещён; через 15 минут вход снова возможен.
Что хотят услышать
- Когда применяется: объекты со статусами.
- Состояния, события, переходы.
- Проверка запрещённых переходов.
Частые ошибки
- Проверять только «счастливый путь» статусов.
- Не проверять, что запрещённый переход действительно запрещён.
Проверьте себя
Один верный вариант. Подумайте, потом откройте ответ.
Показать варианты и ответ
- ✗Это тестирование смены дизайна страниц
- ✗Проверять только допустимые переходы — запрещённые интерфейс всё равно не покажет
- ✗Отмену заказа после отправки проверять не нужно
- ✓Проверить каждый допустимый переход между состояниями и попытки запрещённых
Что спросят дальше
- Какой жизненный цикл у бага? Junior
Связанные вопросы
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.