Тестовый сценарий (test case): Набор входных значений, предусловий выполнения, ожидаемых результатов и постусловий выполнения, разработанный для определенной цели или тестового условия, таких как выполнения определенного пути программы или же для проверки соответствия определенному требованию. (IEEE 610)
Тестовый сценарий высокого уровня (high level test case): Тестовый сценарий без конкретных (уровня реализации) значений входных данных и ожидаемых результатов. Использует логические операторы, а экземпляры реальных значений еще не определены и/или доступны. (ISTQB)
Тестовый сценарий низкого уровня (low level test case): Тестовый сценарий с конкретными (уровня реализации) значениями входных данных и ожидаемых результатов. Логические операторы из тестовых сценариев высокого уровня заменяются реальными значениями, которые соответствуют целям этих логических операторов. (ISTQB)
Test case (тест-кейс, тестовый пример/случай) - это артефакт, описывающий совокупность шагов, конкретных условий и параметров, необходимых для проверки реализации тестируемой функции или ее части. Более строго - формализованное описание одной показательной проверки на соответствие требованиям прямым или косвенным.
Содержание тест-кейса:
- Идентификатор набора тестов (Test Suite ID): Идентификатор набора тестов, в которых входит этот кейс;
- Идентификатор тестового кейса (Test Case ID): Идентификатор самого кейса;
- Заголовок кейса (Test Case Summary): Краткое и емкое название проводимой проверки;
- Связанное требование (Related Requirement): Идентификатор требования, к которому относится / отслеживается данный тестовый пример;
- Предварительные условия (Prerequisites): Любые предпосылки или предварительные условия, которые должны быть выполнены перед выполнением теста;
- Шаги выполнения (Test Script / Procedure): Шаги выполнения теста;
- Тестовые данные (Test Data): Тестовые данные или ссылки на тестовые данные, которые должны использоваться при проведении теста;
- Ожидаемый результат (Expected Result): результат, который мы ожидаем получить после выполнения шагов теста;
- Статус пройден или не пройден (Status): Другие статусы могут быть «Не выполнено», если тестирование не проводится, и «Заблокировано», если тестирование заблокировано;
- Заметки (Remarks): Любые комментарии к тесту или выполнению теста;
- Создано (Created By): Имя автора тестового примера;
- Дата создания (Date of Creation): Дата создания тестового примера (опционально модификации);
- Выполнено (Executed By): Имя человека, выполнившего тест;
- Дата выполнения (Date of Execution): Дата выполнения теста;
- Тестовое окружение (Test Environment): оборудование / программное обеспечение / сеть, в которых выполнялся тест, т.е. все необходимые сведения об окружении, чтобы можно было воспроизвести полученный результат.
В иностранной литературе часто делят кейсы на две категории:
- Высокоуровневый тест-кейс (high level test case или logical test case) - тест-кейс без конкретных входных данных и ожидаемых результатов. Как правило, ограничивается общими идеями и операциями, схож по своей сути с подробно описанным пунктом чек-листа. Достаточно часто встречается в интеграционном тестировании и системном тестировании, а также на уровне smoke. Может служить отправной точкой для проведения исследовательского тестирования или для создания низкоуровневых тест-кейсов.
- Низкоуровневый тест-кейс (low level test case) - тест-кейс с конкретными входными данными и ожидаемыми результатами. Представляет собой «полностью готовый к выполнению» тест-кейс и вообще является наиболее классическим видом тест-кейсов. Начинающих тестировщиков чаще всего учат писать именно такие тесты, т.к. прописать все данные подробно - намного проще, чем понять, какой информацией можно пренебречь, при этом не снизив ценность тест-кейса.
Нужно ли вообще писать кейсы? Ответ тот же, что и для любого документа - если написание кейсов решает определенную задачу и это обоснованно, то писать. Если вы один, не путаетесь в небольшом проекте, пользуетесь чек листами/mind map/.., можете и без TMS/test runs reports наглядно предоставлять актуальные сведения о протестированности/качестве заинтересованным лицам, то не писать.
Может ли быть несколько ожидаемых результатов? Может, если это необходимо, но сразу после каждого шага.
Можно ли объединять позитивные и негативные тест-кейсы? Позитивные можно, негативные нельзя, поскольку сложно будет понять, что именно влияет на результат.
Источники:
Доп. материал:
- Тест-кейсы: полная лекция из ШНАТ
- Тест-кейсы по полочкам - как в библиотеке! Наводим порядок в структуре и содержании тестовой документации
- Составление тест-кейсов
- 12 характеристик высокоэффективных тестов
- Blog: Evaluating Test Cases, Checks, and Tools
- How to write Test Cases for a Login Page
- Как писать тест-кейсы: полное руководство
- Основные методики создания тест-кейсов
- Вложил в тест-кейс аттач? Поясни его!
- Результат в тест-кейсе - один или много?
- Правила написания предварительных шагов в тест-кейсах
- Название тест-кейса - как оформлять
- 5 атрибутов хорошего тест-кейса. Правила написания тест-кейсов. Тест-кейсы в TestRail.
- Примеры: раз, два