Автор: Джоэл Монтвелиски (Joel Montvelisky)
Оригинал статьи
Перевод: Ольга Алифанова Баг-хантинг – распространенная практика в мировых тест-организациях. Однако некоторые тест-менеджеры думают, что баг-хантинг – это поиск багов на границах через неформальные эксперименты с приложением.
Что такое баг-хантинг (и чем он не является)?
Баг-хантинг – это неформальные упражнения по тестированию. Не надо путать их с ситуацией, когда вы развлекаетесь с приложением без цели и смысла, а также не смешивайте их с исследовательским тестированием. Вот почему:
- Баг-хантинг – это групповая деятельность, а исследовательское тестирование может проводиться единолично.
- Цель баг-хантинга – подключить к процессу тех, кто не является тестировщиком, и найти неочевидные баги. Исследовательское тестирование нацелено на "обычные" баги, и им обычно занимаются исключительно тестировщики.
- Исследовательским тестированием можно заниматься на любой стадии процесса разработки. Баг-хантинг приносит пользу, если приложение достаточно стабильно.
Чтобы добиться результатов (и не потратить время зря), баг-хантинг должен следовать особой методологии. Его нужно планировать, готовиться к нему, и контролировать/отслеживать его процесс в ходе выполнения.
Книг, посвященных этой теме, насколько я знаю, не существует. Лично я пользуюсь процессом, о котором узнал несколько лет назад на одной из конференций STAR.
Как планировать баг-хантинг
Я планирую охоту на баги согласно парному тестированию и сценариям мыльной оперы, совмещенным воедино в форме чемпионата между командами.
Парное тестирование – это ситуация, когда два инженера работают как команда на одном компьютере (или в одном окружении). Идея родилась на основе парного программирования, и имеет те же преимущества – передача знаний, мозговой штурм, позитивное давление от партнерской работы. Я получал неплохие результаты, объединяя в пары инженеров из разных команд, особенно если разработчик сотрудничал с тестировщиком – обе стороны могли делиться своими точками зрения.
Сценарии мыльной оперы – это относительно краткие end-to-end сценарии, которые прогоняют систему через сложную операцию, содержащую быструю (и иногда преувеличенную) цепочку событий. Работая в экстремальных условиях, мы можем найти баги, которые были упущены во время тестирования через контролируемые скрипты и сценарии.
Чемпионат задействует человеческий фактор. Люди должны быть мотивированы, и что может быть лучше для инженера, чем приз! Я слежу за статистикой (количество оригинальных багов, обнаруженных в процессе, самый серьезный найденный баг, наихудший краш системы, и т. д.), и награждаю пару, которая преуспела в каждой категории (обычно это футболки, а один раз мы даже выдали iPod). В любом случае, важен не сам приз, а дух соперничества.
Что нужно учесть, прежде чем планировать баг-хантинг
- Убедитесь, что вы достигли минимального уровня зрелости приложения. Если в нем легко найти критические баги, или система постоянно падает – вы поторопились.
- Работайте в тестовых окружениях с реальными данными. Тестирование должно быть далеким от стерильности, чтобы симулировать реальную рабочую ситуацию.
- Создайте сбалансированное расписание. Я работаю с двухдневными баг-хантингами: каждый день начинается с четырех часов исследовательского тестирования отдельной области приложения (каждая команда или пара команд работает над разными участками), а во второй половине дня мы прогоняем сценарии мыльной оперы, когда каждая команда получает профиль пользователя и список высокоуровневых задач.
- Управляйте процессом, используя трекинг-систему. Для этого подойдет любой баг-трекер – это позволит вам отслеживать проблемы, найденные командами. Если это возможно, используйте доску со сводной информацией, чтобы все участники команды могли следить за статусом коллег.
- Назначьте судью по багам – он будет решать, являются ли найденные ситуации реальными багами, а также предотвратит оформление и подсчет дубликатов.
- Пусть команда предвкушает баг-хантинг: разверните внутреннюю "рекламную компанию" перед началом охоты.
- Создайте неформальную атмосферу: включите музыку, выдайте командам колокольчики, чтобы они сигнализировали о находке и оформлении нового бага, закажите пиццу и кока-колу, используйте другие нестандартные подходы, чтобы создать ощущение праздника.
Для баг-хантинга очень важно не только разработать методологию и сценарии, но и создать правильную атмосферу и особое состояние ума. Убедитесь, что вы весело проводите время, и охота точно оправдает ваши ожидания – или даже превзойдет их. Обсудить в форуме
|