Шрифт:
удалить товар из корзины".
Проверка работы функциональностей называется функциональ-
ным тестированием (functional testing).
Стратегический момент: так как функциональное тестирова-
ние — это ось, вокруг которой вертится деятельность большин-
ства тестировщиков, то, следовательно, вокруг нее же будет
"вертеться " и большинство наших последующих бесед.
Важность функционального тестирования состоит в том, что
функциональности — это не что иное, как продукт, предос-
тавляемый пользователям интернет-компанией, и если про-
дукт от релиза к релизу кишит багами, то вместе со счастьем
пользователей убывают и прибыли интернет-компании.
Основными источниками знания о функциональностях служат:
• документация...
...в электронном или распечатанном виде — спеки, макеты,
блок-схемы и прочие руководящие документы, на основа-
нии которых программист пишет код, а тестировщик пла-
нирует тестирование. Примером "прочего руководящего
документа" может служить "Инструкция Мастеркард о
формате файлов с транзакциями";
• хомо сапиенс, т.е.
информация постигается через межличностное общение.
Так, в случае возникновения сомнений никогда не мешает
подойти к продюсеру, хлопнуть его по плечу и попросить:
"Старина, будь добр, объясни мне по-простому пункт 146 вот
этого спека". Здоровая дружеская атмосфера в коллек-
тиве — это отличное средство для предотвращения оши-
бок в толковании (идеальной питательной среды для багов);
• сам веб-сайт,
который мы изучаем посредством эксплоринга. Экспло-
ринг (exploring (англ.) — "исследование", "разведка") —
это изучение того, как работает веб-сайт с точки зрения
пользователя.
Цикл тестирования ПО
135
Эксплоринг совершается каждым из нас, когда мы приходим на
некий веб-сайт и истязаем его, заполняя формы, нажимая на
кнопки, кликая на линки и совершая прочие действия для того,
чтобы понять, как работает та или иная функциональность.
В интернет-компаниях эксплоринг, как правило, применяется в
двух случаях:
• когда написан код и отсутствует документация. Подоб-
ная ситуация часто поджидает первого тестировщика, при-
ходящего в работающую интернет-компанию;
• для самообучения. Например, в крупных интернет-компа-
ниях вновь нанятые тестировщики в течение нескольких
недель проходят тренинг, часть которого посвящена экс-
плорингу.
Кстати, при эксплоринге источником ожидаемого результата слу-
жат наши драгоценные жизненный опыт, опыт работы и другие
ранее перечисленные помощники, не относящиеся к спекам.
Кстати, хорошая идея для тестировщика, помогающая лучше понять
функциональности своего проекта, — это стать обычным пользовате-
лем своего и аналогичных веб-сайтов. Выражение "Eat your own dog
food" ("Ешь еду своей собаки") для тестировщика означает "Если ты
тестируешь веб-сайт, продающий книги, то ты должен сам покупать
книги по Интернету".
Идем дальше.
Конечной целью этапа Изучение и анализ предмета тестирова-
ния является получение ответов на два вопроса:
а. Какие функциональности предстоит протестировать?
б. Как эти функциональности работают?
После того как ответы получены, мы переходим к следующему
этапу цикла.