Что такое тестовый сценарий?

Определение

Быстрое определение: последовательность шагов пользователя в приложении. Всякий вариант действий (возможность), который может быть протестирован, называется тестовым сценарием. Другие названия (менее распространенные, но тоже релевантные) — сценарий тестирования, тестовая возможность, тестовое условие.

Создавая тестовый сценарий, QA-инженер как бы «ставит себя на место пользователя»; в сценарии он описывает ситуации, возникающие в приложении.

Сценарий тестирования
Сценарий тестирования

Тестовый сценарий обычно представляет собой список тест-кейсов сквозного функционального тестирования приложения. Фактически это классификация проверяемых требований высокого уровня, которые разбиваются на категории по функциональности и строятся на юз-кейсах (что является хорошей практикой).

В одном сценарии может быть много тест-кейсов, поэтому тестировщик должен перед сдачей тестового сценария проверить все тест-кейсы по отдельности. Также в процессе лучше советоваться с пользователями, стейкхолдерами и разумеется разработчиками.

Итак, тестовые сценарии — это высокоуровневые документы, описывающие реалистичные варианты действий пользователя в приложении. Сценарии могут быть как позитивными, так и негативными.

Как писать тестовый сценарий

  • Ознакомиться с требованиями в проекте, то есть со документами (спецификациями) системных требований (System Requirement Specifications, SRS), бизнес-требований (BRS), и функциональных требований (FRS). Изучить юз-кейсы приложения, мануалы и другие дополнительные материалы.
  • По каждому требованию уточнить технические аспекты.
  • Понять основные варианты взаимодействия пользователя с приложением.
  • Определить возможные сценарии некорректного использования (и в частности злонамеренного)
  • После ознакомления с требованиями подготовить список тест-кейсов проверки каждой функции приложения
  • После определения базовых тестовых сценариев подготовить матрицу трассировки требований, где будут сопоставлены требования с тестовыми сценариями.
  • Сценарии подаются на согласование руководителю проекта / тест-менеджеру / лиду и стейкхолдерам.

Несколько советов

  • Иметь под рукой список часто используемых функций и модулей
  • В сценариях проверять модули по одному, поддерживая порядок и не забывая о второстепенных модулях
  • Сценарии лучше делать «на уровне модуля»
  • Стараться не удалять готовые сценарии, чтобы потом не писать с нуля
  • Писать сценарии простым понятным языком (а ещё лучше Simple English)
  • Лаконичность — каждый сценарий лучше уложить в одну-две строчки (не абзацев)

Почему нужен тестовый сценарий

  • Качественные тестовые сценарии дают полное тестовое покрытие
  • Сквозная проверка функциональности функций и всего приложения
  • Проверка важных транзакций/взаимодействий
  • Проверка приложения на всех уровнях всеми привлеченными сторонами

Когда тестовый сценарий не нужен

  • В Agile-методологиях типа Scrum тестовые сценарии могут редко применяться
  • Когда приложение нестабильное; чрезвычайно сложное; или не хватает времени
  • Когда сценарии будут в чем-то мешать, например, регрессионному тестированию

Характеристики хорошего сценария

  • В идеале, это «указания тестировщикам, что сделать, одной строчкой»
  • Упрощает и ускоряет тестирование, устраняет «дублирование действий»
  • Создается в результате обдумывания шагов тестирования, их обсуждения, и затем записывается
  • Это серия четких последовательных действий/процедур
  • Если не хватает времени на написание многих тест-кейсов, команда выбирает вариант «один большой тестовый сценарий»
  • Хороший тестовый сценарий легко модифицировать

Примеры

Для простоты иллюстрации — приложение Gmail, создание последовательности действий для самых используемых модулей: Входа (Inbox), Создания письма (Compose), и Входящих (Inbox)

Compose-модуль

  • Введение корректных имени/пароля, далее проверка отображения главной страницы
  • Некорректные имя/пароль, проверка отображения главной страницы
  • Проверка сообщения об ошибке после введения пустого имени/пароля
  • Проверка сброса полей после ввода валидного имени и последующего нажатия кнопки Отмены
  • Проверка блокировки аккаунта (или предупреждения на резервную почту) после ввода трех некорректных значений подряд
  • Проверка отображения полного имени пользователя на главной странице после ввода валидного имени

Login-модуль

  • Проверка возможности доступа к полям To, Cc, Bcc для всех пользователей
  • Проверка создания письма, отправки, и получения подтверждения
  • Создание, отправка и сохранение в Отправленных
  • Проверка обработки невалидных email-адресов
  • Проверка автоматического сохранения в Черновиках после создания письма и отмены отправки
  • Проверка ручного сохранения Черновика и подтверждения

Inbox-модуль

  • Все полученные письма отображены, и выделены жирным шрифтом как непрочитанные
  • Правильное отображение ID письма отправителя (Sender ID) последних писем
  • Выбор (Select) письма > Ответ (Reply) > Пересылка (Forward); проверка его сохранения в Отправленных и наличия во Входящих у получателя
  • Проверка получения и загрузки прикрепленных документов
  • Проверка приклеплений на вирусы
  • Выбор письма > Ответ > Пересылка > Сохранение как Черновика > Проверка его наличия в Черновиках
  • Проверка, что все прочитанные входящие письма не выделены как непрочитанные
  • Все Сс-получатели видимы всем пользователям
  • Все Bcc-получатели скрыты
  • Выбор письма > Удаление > проверка наличия в Корзине

Чем отличается сценарий тестирования и тест-кейс

Тест-кейсСценарий тестирования
Четко прописанные этапы тестирования приложения/сайтаДокументация высокого уровня, описывающая end-to-end-функциональность, которая будет протестирована
Сосредоточен на том, «что тестировать» и «как тестировать»«Что тестировать»
Прописанные этапы, условия начала, ожидаемые результаты; нет неопределенностиМожет быть некоторая неопределенность в сценарии из-за его краткости и ориентированности на человека
Тест-кейсы могут иметь источником тестовые сценарии; один сценарий может «порождать» множество тест-кейсов Основывается на use-кейсах
Полезен при тщательном тестировании приложения/сайтаПолезен для быстрого тестирования E2E-функциональности приложения/сайта
Требуется довольно много времени и усилий на создание и выполнениеСравнительно мало усилий на создание и выполнение
Отличие тест-кейса от тестового сценария

FAQ (ЧаВо)

Что входит в тестовый сценарий?

Компоненты сценария: начальные условия, входные данные, пользовательские ожидаемые действия, и результаты которые должны быть. Сценарии группируются по use-кейсам, на основе которых созданы.

Может ли быть создан автоматически?

Да, может быть или полностью ручным и рассчитанным на выполнение тестировщиком-мануальщиком; или созданным инструментом автоматизации, полностью или частично.

В чем разница между тестовым сценарием, тест кейсом, тест-сьютом?

Тестовый сценарий — последовательность тестовых действий, которая может делиться на отдельные тест-кейсы.

Тест-сьют (тестовый набор) — совокупность тест-кейсов, сгруппированных по какому-то признаку (обычно функциональности).

Кто пишет сценарии тестирования?

Кроме тестировщиков, сценарии тестирования могут писать бизнес-аналитики.

Какие бывают сценарии тестирования?

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

Зачем вообще нужны эти сценарии? Не проще все автоматизировать на 100%?

Это удобнее и human-friendly.

Чем отличается тестовый сценарий от чек-листа?

В чек-листе описывается список вещей, которые будут протестированы; в сценарии — этапы (шаги) и действия.

Что такое негативный тестовый сценарий?

Сценарий с негативными ситуациями/сбоями/отклонениями от так называемого «happy path», то есть беспроблемного использования, и происходит нечто непредусмотренное/ошибочное, когда система не выдает положенный результат.

***

Совсем немного о системном тестировании

Тестовый артефакт =+ документация

Все об SQL в QA

Какой была ваша первая зарплата в QA и как вы искали первую работу?

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Мы в Telegram

Наш официальный канал
Полезные материалы и тесты
Готовимся к собеседованию
Project- и Product-менеджмент

? Популярное

? Telegram-обсуждения

Наши подписчики обсуждают, как искали первую работу в QA. Некоторые ищут ее прямо сейчас.
Наши подписчики рассказывают о том, как не бояться задавать тупые вопросы и чувствовать себя уверенно в новой команде.
Обсуждаем, куда лучше податься - в менеджмент или по технической ветке?
Говорим о конфликтных ситуациях в команде и о том, как их избежать
$1100*
медианная зарплата в QA в июне 2023

*по результатам опроса QA-инженеров в нашем телеграм-канале

Собеседование

19%*
IT-специалистов переехало или приняло решение о переезде из России по состоянию на конец марта 2022

*по результатам опроса в нашем телеграм-канале

live

Обсуждают сейчас