В основном вопросы на собеседовании про тест дизайн и тест-кейсы (тестовые сценарии) строятся вокруг 4 моментов: что такое тест-кейсы, для чего они нужны, что они собой представляют\из чего состоят, методы и подходы к формированию списка тестов. В этой статье мы рассмотрим каждый из этих вопросов, т.к., во-первых, все они часто встречаются во время интервью и, во-вторых, являются базовыми для каждого тестировщика.
1. Что такое тест-кейс
- Если своими словами, то тестовый кейс или сценарий это набор данных, настроек среды, всевозможных условий и действий, которые выполняет тестировщик, чтобы убедиться, что разработанное ПО соответствует заявленным требованиям.
2. Для чего нужны тест-кейсы и зачем мы их пишем
- Во-первых, чтобы структурировать и систематизировать наши планы по проверке ПО и, в частности, минимизировать количество повторяющихся действий
- Во-вторых, чтобы не забыть выполнить какие-либо важные действия
- В-третьих, чтобы те же проверки мог выполнить другой тестировщик или мы сами спокойно могли бы вспомнить, о чем идет речь спустя длительное время
3. Что собой представляет типовой тест-кейс (основные составляющие и атрибуты тест-кейса также приведены на схеме Шаблон тестового кейса)
- Уникальный номер тест-кейса (TC ID)
- Заголовок с краткой идеей тест-кейса (TC Title)
- Ссылка на требования, которые мы проверяем этим тест-кейсом (Reference to Requirement)
- Предварительные действия, настройки и конфигурация тестовой среды (Pre-conditions)
- Собственно шаги тестирования состоящие из действия, ожидаемого результата, фактического результата и его статуса (TC Steps)
- Общий статус тест-кейса (TC Status)
- Действия по возвращению среды в исходное состояние (Post-conditions)
4. Подходы к формированию списка тест-кейсов, приведу некоторые распространенные варианты:
- Разбиение всего набора возможных проверок на классы эквивалентности - при этом из каждого класса выбирают по одной проверке
- Тестирование граничных значений – выполняются проверки на границах допустимых значений
- Тестирование функций ПО – проводим проверки всех функций, которые выполняет ПО
- Проверка основных рисков в работе ПО
- Выполнение проверок по основным сценариям использования ПО (Use Cases)
- Исследовательское тестирование
- Формирование матрицы возможных параметров и значений (traceability matrix)
Список требований к тестировщику ПО