Термин «Сценарное тестирование» придумал Джеймс Бах
«Сценарное тестирование» – тестирование, проводимое при жестком следовании задокументированным сценариям. Это когда вы открываете огромный эксель документ (сейчас уже гугл-докс) и начинаете ставить пассы/фэйлы не смотря по сторонам, только в документ и на приложение (если это описано в документе).
Как не парадоксально, но именно этот термин придумал Джеймс Бах. Но, все только ради того, чтобы объяснить преимущества исследовательского тестирования.
Реальное тестирование – всегда мануальное и всегда автоматизированное
Просто глупо прятаться за гору того, что мы называем авто-тестами. Что нам говорит то, что у нас прошло 100 000 авто-тестов? Это говорит о том, что наше приложение написано качественно? Это говорит о том, что не существует таких сценариев использования, о которых никто не подумал? Это говорит о том, что не существует таких багов, которые находятся значительно глубже, чем поехавший текст на главной странице? Нет, для того чтобы найти такие баги – необходим интеллект. А машины таким интеллектом в данный момент не владеют. Именно поэтому, следует говорить не «автоматизация тестирования», а автоматизация проверок.Это не значит, что автоматизация – это плохо и ее нельзя использовать, потому что она не умеет думать. Автоматизация проверок – это инструмент, который помогает нам сэкономить время. Убедиться в том, что тот функционал, который работал раньше – работает и сейчас. Ну, а в умелых руках тестировщика – этот и другие инструменты поможет сэкономить самый важный и невосполнимый ресурс человеческой жизни – время.
Как не странно, ручное тестирование –это когда мы работаем головой. А инструменты – просто помогают в этом, помогают не пропустить ошибку.
Кто еще не пользуется Fiddler’ом? SQL-профайлерами? Не следит за ресурсами, потребляемыми приложением? Не запускает небольшие программки, которые отслеживают в логах приложения слова "error" и "fail", оповещая при их нахождении, или не запускает приложение в режиме отладки, при этом настроив отладчик на перехват всех исключительных ситуаций? Я надеюсь вы не отключаете назойливые окна, оповещающие о JavaScript ошибках, тестируя приложение в Internet Explorer, вы же ведь следите за консолью браузера?
Мы обдумываем наши сценарии. Мы думаем, что нам нужно сделать сейчас. А инструменты – следят за тем, чтобы мы не отвлекались и чтобы не пропустили баг в недрах системы, который может быть не заметен или подавлен со стороны пользовательского интерфейса.
Реальное тестирование – всегда сценарное и всегда исследовательское
Казалось бы, сценарное тестирование и исследовательское тестирование – это диаметрально противоположные понятия. Как же реальное тестирование может быть и тем и тем?Если взять самое чистое сценарное тестирование в вакууме – то это движение по проложенной колее. При этом – шаг влево, шаг вправо – расстрел. В ходе «чистого сценарного тестирования» – вы не должны думать, а лишь выполнять.
Идеальное исследовательское тестирование («фристайл») – это тестирование неограниченное никакими рамками, структурой и отчетностью. Представьте себе, что вы попали в незнакомое место, без карты, не зная языка той страны и при этом, вы страдаете склером и амнезией...
Это и есть идеальное исследовательское тестирование.
Но, реальное тестирование всегда содержит элементы сценария:
- Ограничение по исследованию конкретной функциональности
- Некоторой идеей
- Возможными рисками
Нам не говорят: «Иди и протестируй, чтобы ВСЁ работало». В ответ можно ответить лишь то, что «ВСЁ не работает». Нам говорят: «Иди и протестируй (исследую) конкретную функциональность». Это задает рамки нашей работы.
Рамки тестирования могут быть следующими:
- Оракулы и Эвристики
- Миссия
- Структура продукта
- Код приложения и его архитектура
- Активности разработчиков
- Временные ограничения
- Навыки, талант, желание и интерес самого тестировщика
- Существующие баги в баг-трекере
Как регулятор громкости – вы можете увеличить или уменьшить долю исследовательского тестирования в вашей повседневной деятельности. Но, это не значит, что у вас чего-то нет. Исследовательское и сценарное тестирование всегда присутствует в той или иной мере.
Комментариев нет:
Отправить комментарий