Статья опубликована в рамках: Научного журнала «Студенческий» № 16(60)
Рубрика журнала: Информационные технологии
Скачать книгу(-и): скачать журнал часть 1, скачать журнал часть 2, скачать журнал часть 3
АВТОМАТИЗАЦИЯ РЕГРЕССИОННОГО ТЕСТИРОВАНИЯ WEB-ПРИЛОЖЕНИЯ
Для web-приложений, которые часто подвергаются изменениям, особо актуальным является вопрос тестирования, как деятельности, повышающей качество программных продуктов. В настоящий момент одним из необходимых видов тестирования, используемых в процессе разработки и модификации программных продуктов, является, так называемое, регрессионное тестирование.
Регрессионное тестирование проводится после внесения изменений в программу, связанных с изменением существующей функциональности, или же исправлением выявленных в процессе тестирования ошибок [1, c. 85].
Регрессионное тестирование рекомендуется проводить несколько раз (3-5). Поэтому, с целью экономии драгоценного времени (и, может быть, для избавления от «рутинности») в регрессионных тестах активно используют методы автоматизации тестирования.
Автоматизированное тестирование можно определить как: «Управление работами и проведение мероприятий по тестированию, включающих в себя разработку и выполнение тестовых скриптов так, чтобы удовлетворить требования к тестированию, с использованием инструментальных средств автоматизированного тестирования».
Автоматизация наиболее эффективна там, где имеющиеся тестовые процедуры периодически запускаются различными тестовыми скриптами или где тестовые скрипты повторяются. Такое тестирование, где скрипты выполняются много раз, обеспечивает значительную отдачу.
В действительности выгода от автоматизации сильно зависит от специфики приложения, но, в большинстве случаев возможно спроектировать автоматические тесты таким образом, что время, затраченное на разработку, не превысит требующегося на ручное тестирование. Для достижения подобного результата необходимо учесть несколько факторов:
– Необходимо выбирать сценарии, которые легко автоматизировать.
– Автотест должен быть легко поддерживаемым. В идеале любую часть скрипта может использоваться в нескольких тестах.
– Участие специалиста по тестированию в работе автотеста должно быть минимальным. В зависимости от задачи это может быть настройка окружения или подготовка тестовых данных.
К плюсам автоматизации тестирования можно отнести запуск скриптов в любое время суток на одной или нескольких удаленных машинах, что позволяет проводить автоматическое тестирование параллельно с ручным.
Из минусов стоит отметить тот факт, что на разработку и поддержку скриптов может уходить довольно много времени, а также то, что далеко не вся функциональность поддается автоматизации.
Определяющий фактор для успешного применения автоматизации тестирования web-приложения - выбор и использование правильного набора средств автоматизации тестирования. Это сложная задача, поскольку на рынке существует очень много инструментов, каждый из которых имеет разные сильные и слабые стороны. Нет инструмента, который бы соответствовал всем требованиям автоматизированного тестирования. Это затрудняет поиск подходящего решения [2, c. 128].
Введение и использование метрик необходимо для улучшения контроля над процессом тестирования. Цель контроля тестирования состоит в получении обратной связи и визуализации процесса тестирования. Необходимую для контроля информацию собирают (как вручную, так и автоматически) и используют для оценки состояния и принятия решений. Метрики, также могут быть использованы для оценки прогресса выполнения запланированных работ и освоения бюджета Любая метрика в автоматизации тестирования должна удовлетворять критериям:
– объективность;
– измеримость;
– должна иметь смысл;
– основана на данных, которые легко доступны;
– может помочь найти направления для совершенствования автоматизации тестирования;
– должна быть простой.
В таблице 1 представлены основные метрики автоматизированного тестирования.
Таблица 1
Основные метрики автоматизированного тестирования.
№ |
Метрика |
Описание |
1 |
Процент тестов, поддающихся автоматизации. |
Отражает адаптированность приложения к автоматизированному тестированию с точки зрения технологий и архитектуры. |
2 |
Частота проведения регрессии. |
Чем выше частота регрессии, а соответственно и частота прогонов автотестов, тем выше ценность автоматизации. |
3 |
Количество дефектов на автоматизированный тест. |
Ведется подсчет дефектов, как автоматизированных, так и ручных. Если автоматизированное тестирование не находит дефектов или лишь незначительное количество дефектов, то стоит предпринять одно из следующих действий: - выделить области автоматизации для улучшения; - приоритизировать усилия в автоматизации; - отказаться от автоматизации. |
4 |
Время, затрачиваемое на прогон автотестов. |
Время, требуемое для прогона автотестов необходимо учитывать при оценки экономической эффективности автоматизации и сравнении с ручным тестированием. |
5 |
Время, необходимое для анализа результатов автоматизированного тестирования. |
Показывает, насколько исчерпывающими и читатабельными являются отчеты. |
6 |
Время разработки автоматизированного теста. |
Позволяет оценить издержки и потенциальную выгоду от введения автоматизации на проекте. |
7 |
Время поддержки автоматизированного теста. |
Время, необходимое на доработку и адаптацию тестов, выделяется за счет времени на разработку новых тестов, а значит, чем выше этот показатель, тем хуже, тем меньше времени остается на другие активности. |
Автоматизация является неотъемлемым этапом развития процесса тестирования. На настоящий момент она не может полностью заменить ручное тестирование, но автоматизация позволяет освободить время специалиста, переключив его на другие задачи.
Список литературы:
- Иконников В.В., Лебедев А.А. Система автоматизации регрессионного тестирования программного обеспечения с закрытым исходным кодом, разрабатываемая для мейнфреймов, работающих под управлением операционной системы Z/OS // Современная наука: актуальные проблемы теории и практики. Серия: Естественные и технические науки. - 2011. - №1. - С. 84-87.
- Иконников В.В., Лебедев А.А. Разработка системы автоматизации регрессионного тестирования // Объектные системы. - 2011. - №3 (3). - С. 126-130.
Оставить комментарий