Почему мы пропускаем ошибки? |
10.10.2011 17:18 |
Автор: Наталья Руколь Страшный сон любого ответственного тестировщика – пропуск ошибки. Вы стараетесь-стараетесь, проверяете продукт, тестируете его по 8+ часов ежедневно, а после выпуска пользователь в течение недели сообщает о критичной проблеме. Как такое может быть, почему и как исправить?
Вариант 1: Какой-либо влияющий фактор на работу нашего ПО был нам неизвестен.В нашем продукте есть красивая формочка, заливающая файлы на сервер. Мы её протестировали с разными типами файлов, разными названиями файлов, разными размерами файлов. Всё успешно работало. После выпуска продукта оказалось, что 80% пользователей не могут залить свои файлы! Оказалось, что файлы успешно заливаются только с локального диска, но не загружаются с флешек, а пользователи в основном используют продукт именно с такими файлами. Диагноз: не происследовали продукт. Недостаточно протестировать весь заявленный функционал, важно также выявить все возможные влияющие на результат работы внешние факторы. Рецепт:
Вариант 2: Не учли все возможные комбинацииНа этот раз наш продукт – онлайн-магазин. После выпуска продукта многие пользователи жалуются, что не добавляются товары в корзину. Чуть позднее мы выясняем, что не добавляется определённый тип товаров, однако сами воспроизвести проблему не можем. Ещё позже выясняем, что они не добавляются только если добавлять несколько товаров одновременно. Недоумеваем. Другие типы товаров по нескольку сразу добавляются. Этот тип по одной штуке добавляется. А этот тип по нескольку сразу не хочет! Диагноз: непроверенные комбинации. Чаще всего нам недостаточно проверить все влияющие факторы, опции продукта – нам надо проверить комбинацию их использования! Рецепт:
Вариант 3: Не хватило времени на тестированиеЕсли честно, я не сталкивалась с такой ситуацией когда на тестирование достаточно времени. Поэтому сжатые временные рамки необходимо считать данностью, а не причиной для пропуска критичных дефектов. Давайте рассмотрим по отдельности два основных сценария нехватки времени: 3-1: Сборка – протестировали – нашли критичные дефекты – новая сборка – протестировали – критичные дефекты – новая сборка – времени на тестирование ноль, критичных дефектов не успели найти – выпустили – упс… Решение:
3-2: В каждую новую сборку включается новый функционал, тестируем только его, на регрессионное тестирование физически нет ресурсов, всё время занято на проверку нового функционала. С вероятностью в 99%+ после релиза всплывут ошибки, которые были внесены в смежные области при добавлении нового функционала. Решение:
Вариант 4: Не заметили, упс…Иногда происходят вообще странные вещи. Кажется, тесты мы провели, а вот багу при проведении теста не заметили. Вот она в продукте, нарядная и с усиками, а в баг-трекере её нет! В такой ситуации причин тоже может быть несколько. 4-1: Не заметили!! Да-да, может звучать странно, однако происходит очень часто. Простые невнимательность и отвлечённость приводят к тому, что, несмотря на ответственность и стремление ничего не пропустить, баг всё равно от нас прячется. Решение: Развивать внимательность! В интернете есть интерактивные упражнялки, да и в реальной жизни можно неприрывно тренироваться. Высматривайте все круглые, или жёлтые, или высокие предметы. Когда едете в общественном транспорте, считайте количество чего-нибудь: шарфов, телефонов, ремней. Выйдя из автобуса, постарайтесь вспомнить что-нибудь, что вы НЕ считали. Внимательность – это навык, и его можно развивать! 4-2: Не знали, что это баг. Чаще всего такое происходит в недостаточно документированных областях функционала. А в каких областях функционала обычно меньше всего требований? Либо в самых сложных (и многие вещи непонятны, оттого и не документируются), либо самых очевидных (которые понятны только в случае, если вы хорошо понимаете специфику работы своих пользователей). Решение:
Кажется, основные причины пропуска критичных ошибок перечислить удалось. Полный ли это список? Нет, конечно же! Иногда ошибки пропускаются из-за незнания элементарных техник тестирования, иногда из-за проблем в планировании, а иногда из-за отсутствия требуемых окружений, обеспечения и т.д. Выводы
И главное – радуйтесь своей работе, тогда и результаты будут отличными |