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

Преимущества, которые дает тестировщику автоматизация тестирования:

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

Вместе с тем имеет место и ряд недостатков, таких как:

    - Затраты на поддержку. Требуется время на разработку и поддержку скриптов. - Стоимость инструмента автоматизации. Стоимость системы автоматизированного тестирования может оказаться неоправданно высокой. - Пропуск мелких ошибок. Автоматический скрипт может пропускать мелкие ошибки, на проверку которых он не запрограммирован. - Ограничения. Не все операции возможно протестировать с помощью авто-тестов.

Постановка задачи

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

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

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

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

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

Передо мной стояли задачи:

    - автоматизировать тестирование новой функциональности ядра продукта; - проанализировать и оценить эффективность использования автоматизации тестирования; - оценить применимость автоматического тестирования регрессионных тестов ядра в текущем проекте.

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

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

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




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

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