tестирование dot com
Шрифт:
В тест-кейсе X мы создаем транзакцию покупки книги. В тест-кейсе Y
мы, допуская, что тест-кейс X был успешно исполнен, проверяем
атрибут успешности транзакции покупки книги, не создавая саму транз-
акцию ("Зачем напрягаться, когда она уже создана?"). В итоге мо-
жет произойти ситуация, когда
так как
• тест-кейс X был удален;
• тест-кейс X был модифицирован так, что он создает транзакцию
другого типа;
• тест-кейс X не создал транзакции по объективной причине (на-
пример, не работал соответствующий код).
52
Тестирование Дот Ком. Часть 1
Как результат, во всех трех случаях мы не можем исполнить тест-
кейс Y, так как данных, на которые он опирается, просто не суще-
ствует.
Таким образом, хороший тест-кейс характеризуют:
• отсутствие ссылок на другие тест-кейсы;
• независимость от "следов", оставленных другими тест-
кейсами в нашем ПО или базе данных.
Следовательно, если у нас в документе А есть 10 тест-кейсов:
тест-кейс 1, тест-кейс 2, ..., тест-кейс 10, то доказательством неза-
висимости каждого из тест-кейсов будет тот факт, что их без
ущерба для тестирования можно всегда исполнять в любом
порядке, например, тест-кейс 10, затем тест-кейс 2, затем тест-
кейс 6 и т.д. Принцип, думаю, понятен.
Согласен, что повторение шагов или подготовительной части тест-
кейса кажется порой тупым занятием, но все-таки преимущества
независимого тест-кейса перекрывают напряг операции скопиро-
вал—вставил.
2. НЕЧЕТКАЯ ФОРМУЛИРОВКА ШАГОВ
Пример
"Пойди туда, не знаю куда".
На шаги тест-кейса можно смотреть, как на инструкцию "Как
пройти" (или "Как проехать").
Пример
Если американцу, который в Москве первый раз, сказать (с видом
москвича в пятом колене), что Красная площадь находится "за ГУМом",
то он бессмысленно потратит много времени в поисках "загума" в путе-
водителе. Если же черкнуть ему е-мейльчик с инструкцией:
1. Выйди из "Националя".
2. На улице поверни направо.
3. Не поднимая глаз, пройди мимо первой стайки барышень.
4. Не поднимая глаз, пройди мимо второй стайки барышень.
5. Спустись налево в подземный переход.
6. Следуй указателям на стенах с надписью "Красная площадь",
то он не только найдет Красную площадь и купит там прапорскую
ушанку с гнутой кокардой, но и избежит обвинений в сексуальном хар-
расменте, которые на его родине вещь очень даже серьезная.
Искусство создания тест-кейсов
53
Кстати,
• шаги 1 — 5 включительно — это точные инструкции, а
• шаг 6 — это отсылка к инструкциям, хранящимся в другом месте
(помните, мы говорили о внутреннем Пособии для тестировщи-ков
с шагами для повторяющихся сценариев?).
Итак, перечисляющиеся в тест-кейсе шаги должны быть объ-
ективно четкими и ясными.
Нужно помнить,
• то, что очевидно для вас сейчас, может стать совершен
но непонятным через пару месяцев.
Так, сокращенные шаги с нерасшифрованными аббревиа-
турами и прочими веселыми прибамбасами, понятными
вам сейчас, могут впоследствии стать китайской грамотой
для вас самих, так что проще будет написать тест-кейс за-
ново, чем пробираться через дебри неосмотрительно сде-
ланных описаний;
• тест-кейс, который не может быть исполнен никем,
кроме его автора, должен быть публично сожжен, рас
терт в порошок и развеян по ветру.
Обоснование простое: что, если автор тест-кейса заболеет,
уйдет в отпуск, уйдет из компании или уйдет, извините,
вообще? Любой тест-кейс должен создаваться с мыслью
о коллеге, который однажды возьмет его в руки.