АВТОМАТИЗАЦИЯ РУЧНОГО РЕГРЕССИОННОГО ТЕСТИРОВАНИЯ WEB-ПРИЛОЖЕНИЙ

Барвин Сергей Константинович1, Попов Денис Владимирович2
1ФГБОУ ВО «Уфимский государственный нефтяной технический университет», магистрант, кафедра «Вычислительная техника и инженерная кибернетика»
2ФГБОУ ВО «Уфимский государственный нефтяной технический университет», научный руководитель, кандидат технических наук, доцент, кафедра «Вычислительная математика и кибернетика»

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

Ключевые слова: ,


Рубрика: 05.00.00 ТЕХНИЧЕСКИЕ НАУКИ

Библиографическая ссылка на статью:
Барвин С.К., Попов Д.В. Автоматизация ручного регрессионного тестирования web-приложений // Современные научные исследования и инновации. 2019. № 4 [Электронный ресурс]. URL: https://web.snauka.ru/issues/2019/04/89161 (дата обращения: 18.04.2024).

Для web-приложений, в которых часто происходит изменение функционала, становится актуальным вопрос тестирования, как процесса, повышающего качество разрабатываемого продукта. На настоящий момент одним из необходимых видов тестирования, используемых в процессе разработки приложений, выступает регрессионное тестирование.

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

Регрессионное тестирование состоит из тестовых случаев. Тестовых случаев для больших проектов насчитывается тысячами, а рекомендуют их выполнять от трех до пяти раз. Поэтому с целью экономии времени в таком тестировании активно используют методы автоматизации [1, c. 85]..

Автоматизированное тестирование можно определить как: «Управление работами и проведение мероприятий по тестированию, включающих в себя разработку и выполнение тестовых скриптов так, чтобы удовлетворить требования к тестированию, с использованием инструментальных средств автоматизированного тестирования».

Автоматизация приносит наибольшую выгоду там, где тестовые процедуры тестовые процедуры периодически запускаются различными тестовыми скриптами или  где тестовые скрипты повторяются. Такое тестирование, где скрипты выполняются много раз, обеспечивает значительную отдачу.

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

– Необходимо выбирать сценарии, которые легко автоматизировать.

– Автотест должен быть легко поддерживаемым. В идеале любую часть скрипта может использоваться в нескольких тестах.

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

К минусам автоматизации стоит отнести то, что на поддержку и разработку автотестов может затрачиваться довольно много времени, а также то, что далеко не вся функциональность поддается автоматизации [2, c. 128]..

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

Существует несколько подходов к автоматизации тестирования web-приложений:

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

2) Тестирование через графический интерфейс. Имитация действий пользователя с помощью специальных тестовых фреймворков.

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

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

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

2) Сценарный подход – форма программирования на языках, специально разработанных для автоматизации тестирования программного обеспечения. Чтобы разрабатывать такие тесты, необходимы хорошие навыки программирования.

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


Библиографический список
  1. Иконников В.В., Лебедев А.А Система автоматизации регрессионного тестирования программного обеспечения с закрытым исходным кодом, разрабатываемая для мейнфреймов, работающих под управлением операционной системы Z/OS // Современная наука: актуальные проблемы теории и практики. Серия: Естественные и технические науки. – 2011. – №1. – С. 84-87.
  2. Иконников В.В., Лебедев А.А Разработка системы автоматизации регрессионного тестирования // Объектные системы. – 2011. – №3 (3). – С. 126-130.


Количество просмотров публикации: Please wait

Все статьи автора «Барвин Сергей Константинович»


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

Связь с автором (комментарии/рецензии к статье)

Оставить комментарий

Вы должны авторизоваться, чтобы оставить комментарий.

Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться:
  • Регистрация