Постановка задачи., Практическая часть. Ход работы - Автоматизация регрессионного тестирования

В проекте несколько раз в течение жизненного цикла тестируемого продукта проводится ручное регрессионное тестирование такой функциональности, как проверка соответствия конфигураций их идеальным состояниям. Эта деятельность постепенно стала отнимать значительное количество человеческих и временных ресурсов. В то же время, наряду с регрессионным тестированием, в проекте выполняются и другие виды тестирования, которые на данный момент уже имеют реализацию в качестве автоматических тестов. Для выполнения этой задачи используется инструмент для автоматического тестирования Cucumber.

Передо мной были поставлены задачи применения вышеуказанного приложения для автоматизации регрессионного тестирования элементов проверки соответствия в текущем проекте, анализа полученных результатов и оценки целесообразности перехода от ручного регрессионного тестирования к автоматическому.

Практическая часть. Ход работы

Одной из основных функций тестируемого программного обеспечения является возможность построения конфигураций для настройки LTE-сетей. Конфигурации могут отличаться своим предназначением, объемом и глубиной. Для того, чтобы конфигурации отвечали требованиям, не содержали лишних объектов или, наоборот, включали в себя все необходимые элементы, ПО предусматривает проверку соответствия построенных конфигураций их оракулам (эталонам).

Полная проверка соответствия основана на проверке отдельных элементов, которые отвечают за различные типы и формы конфигураций. Таких элементов в тестируемом продукте может быть несколько сотен на одну версию. Каждый элемент имеет определенную постоянную структуру: название, область применения, содержание сообщений, описание элемента, шаги для корректировки конфигурации, код для ее построения. При запуске проверки соответствия на корневом элементе, который в свою очередь также является частью структуры, происходит обработка и отображение сообщений, соответствующих данному элементу.

Задача тестировщика в этом случае заключается в максимально возможном покрытии структуры элемента проверки соответствия, анализе полученных результатов, определении его соответствия ожидаемому поведению. При этом, в случае регрессионных тестов, нет необходимости в построении новых или изменении старых конфигураций, происходит мониторинг текущего состояния программного продукта на возможное косвенное влияние со стороны введения новых функций или их изменения, исправления найденных ранее дефектов.

Мониторинг текущего состояния программного продукта осуществлялся с помощью монотонных действий со стороны тестировщика с данными большого объема, поэтому введение автоматизации этой деятельности видится перспективной заменой ручного рутинного труда.

Для принятия решения о целесообразности автоматизации тестирования элементов соответствия в текущем проекте мною были определены для выполнения следующие действия:

    - исследование возможности автоматизации тестирования элементов проверки соответствия тестируемого программного обеспечения, - автоматизация тестирования элементов проверки соответствия тестируемого программного обеспечения, - запуск автоматических тестов для кампании элементов проверки соответствия ранее протестированных вручную, - сравнение и анализ полученных результатов, - выводы по целесообразности/нецелесообразности автоматизации тестирования элементов проверки соответствия.

Тестируемое программное обеспечение было исследовано в течение нескольких месяцев для написания текущей работы. Как правило, календарный год - время разработки и тестирования одной версии продукта, затем продукт уходит к пользователям. За этот период, согласно итерационной модели разработки ПО, планируется выпуск 20 итераций тестируемого программного продукта. Каждая итерация в какой-либо мере отличается от предыдущей: имеет обновленный функционал либо корректировку дефектов, найденных на предыдущем этапе жизненного цикла. Порой даже самые незначительные изменения могу повлечь за собой регрессию. Регрессионные тесты выполняются дважды за версию продукта.

Похожие статьи




Постановка задачи., Практическая часть. Ход работы - Автоматизация регрессионного тестирования

Предыдущая | Следующая