tестирование dot com
Шрифт:
либо
2. Отрицательный исход (FAIL), если ФР не равен ОР: най
ден баг!
Иногда возникает ситуация, когда мы заблокированы (test case
execution is blocked), так как не можем пройти ВСЕ шаги тест-
кейса. Например, мы не можем продвинуться дальше, если кноп-
ки "Завершить заказ" из шага 14 не существует на соответствую-
щей веб-странице. В таком случае мы рапортуем баг (в
случае баг об отсутствии кнопки "Завершить заказ") и отклады-
ваем исполнение тест-кейса до устранения бага.
Полезные атрибуты тест-кейса
УНИКАЛЬНЫЙ ID (Unique ID)
Это необходимая вещь. Тест-кейс без ID — это то же самое, что
квартира без адреса или швейцарские часы без номера. ID должен
быть уникальным в пределах не только документа, содержащего
тест-кейс (об этом документе позже), но и всего департамента
40
Тестирование Дот Ком. Часть 1
качества. Рациональное обоснование: со временем появится не-
обходимость вести статистику по тест-кейсам, обновлять, удалять
или переносить в другой документ некоторые из них, прикрывать
спину и т.д.
ПРИОРИТЕТ ТЕСТ-КЕЙСА (Test Case Priority)
Это важность тест-кейса. Важность отражается по шкале от 1 до п,
где 1 — это высший приоритет, а п — это низший приоритет.
Думаю, что рационально делать п = 4.
Допустим, тест-кейс, проверяющий, работает ли кнопка "Купить",
будет 1-го приоритета, а тест-кейс, проверяющий цвет шрифта
линка "Гостевая книга", будет 4-го приоритета. Концептуально,
думаю, понятно.
Зачем это делается? Допустим, у нас есть два тест-кейса: один 1-
го приоритета и другой — 3-го приоритета, оба тестируют некую
функциональность А, и есть время для исполнения только одного
из них. Естественно, что мы выберем тест-кейс 1-го приоритета.
Приоритезация тест-кейсов особо полезна при регрессивном
тестировании, о котором мы не раз будем говорить.
Вопрос: Как присваиваются приоритеты?
Ответ: Конечно, все зависит от компании, но, как правило, автор
тест-кейса просто решает, насколько жизненно важна, опреде-
ляюща и критична вещь, проверяемая данным тест-кейсом.
ИДЕЯ (IDEA)
Это описание конкретной вещи, проверяемой тест-кейсом (в даль-
нейшем эту конкретную вещь мы также будем называть "идея
тест-кейса").
Пример
В тест-кейсе с картой ожидаемым результатом является значение "10"
в колонке result строки с нашей транзакцией. Поймет ли, ЧТО мы тес-
тируем, человек, который не знает, что программисты www.testshop.rs
обозначают первую цифру результата транзакции индексом кредитной
карты (где "1" — это VISA, "2" — MasterCard, "3" — Switch), а вторую —
флагом успеха (где "О" — это успех, а "1" — ошибка) и соответственно
"10" означает, что транзакция с картой VISA была успешной?
Дело в том, что "непосвященным" может стать даже автор тест-
кейса, скажем, через месяц после написания, так как все в мире
тленно и забываемо (кроме, конечно, первой школьной любви
Искусство создания тест-кейсов
41
Ани В.)- Поэтому в начале тест-кейса следует написать на чело-
веческом языке: "Оплата может быть произведена картой VISA",
чтобы любой, кто возьмет этот тест-кейс в руки, не ломал голову,
а сразу понял, что проверяется этим тест-кейсом.
ПОДГОТОВИТЕЛЬНАЯ ЧАСТЬ (SETUP and ADDITIONAL INFO)
Кулинарный рецепт, как правило, включает две части:
1. Список ингредиентов и количество/вес каждого из них;
2. Инструкция по тому, как жарить, парить и варить несчаст-
ных из пункта 1.
Первая часть рецепта нужна для того, чтобы повар мог знать
заранее, видеть в одном месте все необходимые составляющие
блюда и иметь их под рукой, когда "настанет день и час". В
общем выделение подготовительной части удобно, логично и
практично.
В подготовительную часть тест-кейса могут включаться:
• данные о существующем эккаунте пользователя (legacy user
account) или инструкции по созданию нового эккаунта (new
user account);
• другие данные, используемые в тест-кейсе, например атри-
буты используемой кредитной карты;
• запросы к базе данных (SQL queries), используемые в тест-
кейсе;
• комментарии в помощь тестировщику, например о ню-
ансах, которые могут встретиться при исполнении тест-
кейса;
• другие вещи, облегчающие исполнение и поддержку тест-
кейса (о поддержке мы еще поговорим).
ИСТОРИЯ РЕДАКТИРОВАНИЯ (Revision History)
Очень полезная вещь.
Пример
Допустим, у Макса Крылова живет попугай-жако Вася. Макс учит его