В публикации Testing Computer
Software [KAN99], оно упоминается и в работах других авторов, включая Джеймса Баха. Бах сторонник исследовательского тестирования, при котором проводятся короткие сеансы тестирования (продолжительностью
«Искусственные» виды тестирования
около 90 минут), результаты которых записываются и проверяются. Усовершенствуйте текущий процесс тестирования, чтобы повысить качество продукта и ускорить его выпуск. Провести исследовательское тестирование функциональной области “Редактирование закладки”. Исследовательское тестирование широко используется в методологии разработки Agile.
- Если при тестировании на основании тест-кейсов мы не отклоняемся, то, в случае с исследовательским тестированием, мы сами решаем куда отклоняться и в каком направлении двигаться.
- Поэтому часто его могут посчитать не столь важным этапом и пропустить.
- Чистое исследовательское тестирование хорошо работает на небольших краткосрочных проектах или на начальных этапах жизни продукта.
- Даже если тест-кейсы не предварительно определены, важно вести записи о процессе исследования.
- Дополнительно к собственно исследованию продукта — применяют техники таблицы решений, причин/следствий, и предугадывания ошибок.
- Обсуждение с коллегами может помочь выявить более сложные дефекты.
Взаимодействие между участниками может привести к обнаружению различных дефектов и идей для улучшения продукта. Исследовательское тестирование дает свободу тестировщикам исследовать приложение, не ограничиваясь заданными сценариями. Это позволяет обнаруживать дефекты там, где они могут быть пропущены в прочих случаях.
Школа тест-менеджера v-2.0
Действия с таким способом предписаны и предсказуемы, расхождение со скриптом не предусмотрено. Вопросы «Что, когда, как, кто и зачем» — задает себе тестировщик, приступая к исследованию, и готовит чек-лист важных проверок. Можно угадать области продукта, в которых, скорее всего, будет много дефектов. Имея опыт с подобными продуктами, это бывает не так уж сложно. А при скриптовом тестировании вы готовите тестовую документацию, кейсы, чек-листы, согласовываете их, актуализируете, поддерживаете, всегда придерживаетесь конкретного маршрута движения и тратите довольно много времени.
Казалось бы, логика подсказывает, что применить исследовательский подход к регрессионному тестированию сложно. Тестировщики могут эмулировать действия реальных пользователей, взаимодействуя с приложением так, как это делали бы конечные пользователи. Это помогает выявить потенциальные проблемы с интерфейсом и производительностью. Эта техника включает в себя исследование граничных условий входных данных. Тестировщики проводят тесты с минимальными и максимальными значениями параметров, чтобы выявить дефекты, связанные с переполнением буфера, ошибками округления и другими аномалиями.
Ранее замеченные дефекты
Хотя исследовательское тестирование – это в основном ручной процесс, можно автоматизировать повторяющиеся или отнимающие много времени задачи. Так мы освободим тестировщиков для более экспериментальной работы. Например, автоматизированные exploratory testing пример регрессионные тесты могут выполняться в фоновом режиме, пока тестировщики сосредоточены на исследовательском тестировании. К популярным инструментам автоматизации тестирования относятся, например, Selenium и Appium.
Тестировщики могут проводить тестирование шаг за шагом, последовательно проходя через разные части приложения. Это помогает систематически проверять каждую функциональность и выявлять дефекты на ранних этапах. В рамках группового тестирования команда тестировщиков собирается для совместного исследования приложения.
Когда можно применять исследовательское тестирование в чистом виде
Однако, очень важно иметь возможность получать актуальную информацию о стадии тестирования и его результатах в режиме реального времени, чтобы учесть возможные проблемы и вовремя скорректировать стратегию тестирования. Многие скажут, что это утверждение верно, и будут по-своему https://deveducation.com/ правы, ведь исследование проводится и в том, и в другом случае. Я же думаю, что имеет смысл разделять понятия «тестирование» и «тест-анализ». Этот метод может быть менее подходящим для проектов с жесткими требованиями к документации и строгими нормами безопасности.
Вы не тратите время на создание тестов, на их запись, как при скриптовом подходе, ничего не актуализируете, не тратите время на то, чтобы показать записанные тесты руководителю и получить согласование. Обычные пользователи, когда находят ошибку на сайте и пишут об этом разработчикам, как раз и осуществляют свободное тестирование. Кто-то из них может даже специально пробовал «сломать» сайт и пытался найти ошибки. А вот при интуитивном тестировании мы, как тестировщики, уже опираемся на свой опыт, можем идти по составленному ранее чек-листу, зная, где примерно могут быть проблемы. Да, грань может показаться очень тонкой, но она безусловно есть. Также в результате исследовательского тестирования могут появиться новые тест-кейсы.
Такое тестирование не требует никакой документации, планирования,наличия процессов, которых следует придерживаться при выполнении тестирования. Сочетание исследовательского тестирования с обязательным сценарным тестированием позволяет поддерживать высокий уровень качества проверок и снизить риск появления дефектов в релизе. Но для небольших проектов с более-менее очевидной функциональностью вполне можно заменить привычный набор тестовых сценариев небольшим чек-листом с основными частями функционала.
Тестировщики могут исследовать взаимодействие приложения с разными типами данных. Они могут вводить неправильные данные, специальные символы и даже попытаться инъекции SQL-запросов, чтобы проверить, как приложение обрабатывает их. Исследовательское тестирование идеально подходит для проектов, где требования постоянно меняются. Тестировщики могут быстро адаптироваться к новым условиям, не тратя время на обновление тест-кейсов. Также особое внимание при исследовательском тестировании уделяется проверке правильности обработки ошибок, как одной из базовых функций ИТ-системы.