Автоматизация системных тестов
В каждом спринте ручные тесты должны быть связаны, в основном, с новыми требованиями, реализованными в спринте. При этом может потребоваться повторить некоторые тесты из предыдущих спринтов, чтобы убедиться, что последние изменения не привели к ошибкам функций, работавших ранее. Рабочая нагрузка, связанная с таким регрессионным тестированием, постепенно увеличивается на протяжении жизненного цикла проекта. Это обязательный аспект гибкой разработки, которая начинается с простой сквозной реализации и продолжается анализом каждого компонента и добавлением новых функций.
Чтобы снизить объемы работы по регрессионному тестированию, можно автоматизировать выполненные вручную системные тесты. Обычно для каждого требования создается тестовый случай, который выполняется вручную в течение одного или двух спринтов, после чего некоторые из них автоматизируются для будущих спринтов.
Есть несколько способов автоматизации тестов:
Связывание тестового метода с тестовым случаем.
Можно связать любой модульный тест с тестовым случаем, хотя обычно связывается интеграционный тест, имитирующий ручную версию тестового случая. Тестовый случай может включать ручные и автоматизированные версии. Автоматизированные тестовые случаи можно выполнять из Microsoft Test Manager. Их результаты отображаются вместе с результатами ручных тестовых случаев.
Связывание закодированного теста пользовательского интерфейса с тестовым случаем.
Закодированный тест пользовательского интерфейса (CUIT) моделирует жесты пользователя. Он может нажимать кнопки, вводить текст и проверять значения, отображаемые в текстовых полях. Этот тип теста позволяет наиболее точно автоматизировать ручной тест. CUIT можно создать, записав действия при выполнении теста вручную. CUIT — это метод теста, который будет выполняться на платформе модульного тестирования, и который можно связать с тестовым случаем. Его можно выполнять вместе с другими автоматизированными и ручными тестами.
Автоматизированный процесс "сборка-развертывание-тестирование".
Системные тесты можно выполнять как часть процесса сборки. Процесс сборки может развертывать серверные компоненты на лабораторных компьютерах для создания реалистичных условий выполнения.
Подразделы в этом разделе
Связывание тестового случая с тестовым методом, создание лабораторной среды и определение расположения собранного метода теста. Выполнение автоматизированных тестовых случаев из Microsoft Test Manager аналогично ручным тестовым случаям. |
|
Создание метода теста, моделирующего действия пользователя за счет записи ручного теста. |
|
Автоматизированные рабочие процессы сборки, развертывания и тестирования |
Автоматическое развертывание кода в лабораторную среду, выполнение тестов и сбор диагностических данных в рамках сборки сервера. |
Определение невидимых друг для друга виртуальных лабораторных сред с одинаковыми внутренними адресами для параллельного выполнения нескольких системных тестов. |
|
Запуск автоматических тестов одновременно на нескольких компьютерах |