Тестирование
November 26, 2023

3.1 Чек-листы и тест-кейсы

Тестовая документация:

1. Чек-лист (checklist) - список проверок, в котором показано, что будет тестироваться, и как следствие результат и статус проверок.

Чек-лист (checklist) - набор идей: идей по тестированию, идей по разработке, идей по планированию и управлению — любых идей.
Самый простой пример чек-листа в отрыве от тестирования: список покупок, где покупка является проверкой, а чек-бокс - ее статус.

Что должно указываться в хорошем чек-листе: 1. Список проверок
2. Что тестировать
3. Результаты проверок

Обязательные части чек-листа

Шапка: содержит информацию о названии приложения, его версии, окружении, на котором проводится тестирование (версия ОС, браузера, эмулятора), ответственного за тестирование, дату тестирования

Тестируемые модули, субмодули: например, регистрация, аутентификация авторизация

Список проверок: они должны отражать основную суть, без лишней детализации

Статус: информация о статусе прохождения проверки - пройдено/не пройдено (passed/failed)

Дополнительные части чек-листа

Ожидаемый результат: то, что мы ожидаем увидеть после запуски проверки согласно требованиям

Типы тестирования: к какому типу относится проверка?

Отчеты о дефекте: ссылки на отчеты о дефектах для прослеживаемости

Заметки: если нужно добавить комментарии

Также у проверок может быть уникальный идентификатор для прослеживаемости.

Фрагмент реального чек-листа

Тест-кейс

Тестовый случай (test case) - набор предусловий, входных данных, действий (где применимо), ожидаемых результатов и постусловий, разработанных на основе тестовых условий.

Свойства и обязательные атрибуты тест-кейса: 1. Пошаговый сценарий 2. Как тестировать 3. Результат проверок 4. Заголовок 5. Приоритет

В отличие от чек-листа, тест-кейс содержит в себе больше деталей: идентификатор, приоритет, заголовок, шаги и ожидаемые результаты.

Тест-кейсы объединяют в тестовые наборы (test suites) по одинаковым признакам: проверки для одного модуля, проверки для определенного типа тестирования, регрессионные наборы.

Атрибуты тест-кейса

Идентификатор (ID): уникальный номер, необходимый для прослеживаемости. В системах по управлению кейсами (TMS - test management system) проставляется автоматически

Приоритет (Priority): срочность и важность выполнения задачи

Требование (Requirement): ссылка на требование, для проверки которого служит кейс

Модуль (Module): название структурной части, в которой находится предмет тестирования

Заголовок (Title): Отражает суть проверки

Тестовые данные и предусловия (input data, test data, preconditions): информация о данных, которые необходимы для тестирования (данные для ввода, файлы с определенным расширением и размером и т.д.) + специальное состояние системы до начала тестирования (пользователь зарегистрирован, созданы объекты в базе данных и т.д.)

Шаги (Steps): последовательность действий для получения ожидаемого результата

Ожидаемые результаты (Expected results): ссылка на требование, для проверки которого служит кейс. Результат должен быть для каждого шага.

Постусловия (Postconditions): возвращение систему в исходное состояние (удаление данных, пользователей, отключение виртуальной машины и т.д.)

Пример тест-кейса

Обязательными атрибутами для тест-кейса являются: идентификатор, приоритет, заголовок, шаги и ожидаемые результаты.

Все остальное используется в зависимости от конкретной задачи.

Критерии выбора той или иной тестовой документации на проекте

  1. Зависит от сложности проекта. Если проект простой - достаточно чек-листа. Если проект усложняется, если много требований, которые нужно проверять - тест-кейсы.
  2. Зависит от длительности проекта. Если проект не очень долгий - логично использовать чек-листы. Если проект долгий - тогда используют тест-кейсы.
  3. Зависит от размера проекта. Чем больше проект, чем больше людей задействовано - то лучше использовать тест-кейс.
  4. Зависит от стабильности. Если команда часто меняется - используют тест-кейсы.
  5. Зависит от требований. Если требования не подвержены сильным изменениям - тогда лучше использовать тест-кейсы.
  6. Зависит от желания заказчика. Если заказчик хочет быть более вовлечен в процесс - зачастую заказчик выбирает тест-кейсы.

На проекте могут одновременно использоваться и чек-лист, и тест-кейс. Например, чек-лист для проверки GUI, а тест-кейсы для проверок сложной бизнес-логики.