Исследовательское тестирование – важный этап в разработке проектов Agile, так как оно помогает тестировщикам ПО идти в ногу с быстрым темпом разработки программных проектов, разрабатываемых по Agile.
Во-первых, проведем краткое введение в методологию Agile и исследовательское тестирование:
В Agile программное обеспечение выпускается нечасто. Каждое обновление проходит через планирование, оценку, разработку, интеграцию, тестирование и выпуск. Из-за частых выпусков автоматизация тестирования становится очень важной, так как разработчикам необходимо быстро получить информацию о статусе приложения. Автоматические проверки служат для обеспечения гарантии, что с каждым выпуском программное обеспечение не будет регрессировано (ухудшено).
Кстати, наши курсы Тестирования ПО в Минске тщательно разбирают этот вопрос.
Исследовательское тестирование определяется как одновременное обучение, разработка и выполнение тестов. Это подход к тестированию, который оценивается тестировщиком как неотъемлемая часть тестового процесса и имеет те же значения, что и Agile Manifesto:
- Взаимодействие процессов и инструментов
- Рабочее программное обеспечение по комплексной документации
- Сотрудничество с заказчиком в отношении переговоров по контракту
- Реагирование на изменение в соответствии с планом
Исследовательское тестирование также является дополнением к автоматизации тестирования. То есть, в то время как автоматические проверки проверяют проблемы регрессии, исследовательское тестирование фокусируется на новых функциях, которые были разработаны. Это важно, потому что работа над проектом обычно длится всего пару недель, что не дает достаточно времени для написания сценариев тестов и их последующего выполнения в отношении приложения. С другой стороны, исследовательские тестирования в Agile позволяют тестировщикам знакомиться с доменом и приложением на каждом обновлении, что помогает расширить знания тестировщиков и, следовательно, они становятся более ценными, а их работа более эффективной.
Согласно квадранту тестирования по Брайану Марику, есть две стороны тестирования: те, которые поддерживают программирование, то есть поддерживают написание кода (модульные тесты) или указывают на тот момент, когда работа над проектом может быть прекращена (приемочные тестирования), и те, которые критикуют продукт, т.е. помогают «смотреть на готовый продукт с намерением обнаружить недостатки». Здесь, в области критики продукта, исследовательское тестирование может играть важную роль в проекте Agile.
В проектах Agile тесты, поддерживающие программирование, в основном выполняются разработчиками и почти всегда автоматизированы, тогда как исследовательские тесты нацелены на поиск возможных проблем, которые выходят за рамки автоматизированных тестов программиста. Тестировщики сосредотачиваются на тех областях, где существующие автоматизированные тесты могут оказаться бесполезными.
Успешные тестировщики, работающие над проектами Agile, используют тактику исследовательского тестирования, чтобы помочь команде проекта рассказать о возможных проблемах с продуктом. Их тестирование может быть неструктурированным или, наоборот, координироваться тестировочной концепцией. Также из-за коротких сроков разработки, тестирование по своей сути становится неэффективным , а исследовательское тестирование может сосредоточиться на областях высокого риска для поиска потенциальных проблем.
Agile и исследовательские тестирования – это дополнительные методы, которые при совместном использовании могут создать отличную комбинацию в процессе тестирования.
Запишитесь на наши курсы Тестирования ПО в Минске прямо сейчас или закажите звонок с бесплатной консультацией!
Запишитесь прямо сейчас или закажите звонок с бесплатной консультацией!
Записаться сейчас / Бесплатная консультация