Поделиться через


Руководство по построению, развертыванию и тестированию рабочих процессов

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

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

  1. Создание плана тестирования и набора тестов: Определение действий тестирования с помощью планов тестирования.

  2. Сопоставление автоматических тестов с тестовыми случаями из набора тестов: Практическое руководство. Связывание автоматического теста с тестовым случаем.

  3. Создание физической или виртуальной среды: Среды.

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

  • Требования

    В следующем разделе описываются требования для выполнения построения, развертывания и тестирования в ходе рабочего процесса: Требования.

  • Построение

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

  • Построение и тестирование

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

    Важно!

    Тесты при таком подходе выполняются в составе процесса построения с использованием программы mstest.exe.Дополнительные сведения о программе mstest.exe см. в разделе Параметры командной строки программы MSTest.exe.

  • Построение и Развертывание

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

  • Построение, развертывание и тестирование

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

    Важно!

    Тесты при таком подходе выполняются в составе процесса построения с использованием программы tcm.exe.Дополнительные сведения о программе tcm.exe см. в разделе tcm. Импорт и запуск автоматических тестов для плана тестирования из командной строки.

Требования

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

Требования для построения, развертывания и тестирования

Требования к программному обеспечению для всех задач

  • Team Foundation Server

Требования к программному обеспечению для построения

  • Контроллер построений

    Для каждой коллекции командных проектов требуется хотя бы один контроллер построений.

  • Агент построения

    Для каждого контроллера построений требуется хотя бы один агент построения.

Требования к программному обеспечению для развертывания

  • 1 контроллер построений (можно использовать тот же контроллер построений, который используется для построения приложения).

  • Для виртуальной среды: один агент построения и один агент лаборатории на каждой машине виртуальной среды.

Требования к программному обеспечению для тестирования с использованием сред

  • Тестовый контроллер

    Для каждой коллекции командных проектов требуется хотя бы один контроллер тестирования.

  • Агенты тестирования

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

  • Для виртуальной среды: на каждой машине виртуальной среды должен быть установлен один агент лаборатории (помимо агента тестирования).

Дополнительные сведения о взаимодействии этих компонентов при выполнении тестов см. в разделе Настройка тестовых компьютеров для выполнения тестов или сбора данных.

Дополнительные сведения об установке этих компонентов см. в разделе Установка и настройка агентов Visual Studio и контроллеров тестирования и построения.

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

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

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

  • Для каждой коллекции командных проектов требуется один контроллер построений.

  • На каждом компьютере можно разместить только один контроллер построений.

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

  • Контроллер построений можно установить на один компьютер с сервером Team Foundation Server. Если контроллер построений управляет большим числом активных агентов построения, это может привести к потреблению большого объема системной памяти. В таком случае рекомендуется установить контроллер построений на отдельном компьютере.

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

Важно!

Дополнительные сведения о топологиях, которые можно использовать для установки контроллеров и агентов построений, см. в разделе Примеры топологии систем построения.

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

Чтобы сократить количество проблем связи между программными компонентами, рекомендуется размещать компьютер контроллера тестирования и сервер Team Foundation Server в одном домене. Дополнительные сведения об установке компонентов в разных доменах или в рабочих группах см. в разделе Требования для рабочих групп и нескольких доменов.

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

  • Контроллер тестирования требуется при выполнении тестов с использованием физической или виртуальной среды.

  • Один контроллер тестирования можно использовать для нескольких физических или виртуальных сред.

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

  • Каждый контроллер тестирования можно зарегистрировать только в одной коллекции командных проектов.

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

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

Примечание

Если для поддержки коллекции командных проектов используется большое число среди необходимо установить несколько контроллеров тестирования, можно зарегистрировать несколько контроллеров тестирования на одном сервере Team Foundation Server.

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

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

Построение и выполнение автоматических тестов

Если в состав задач рабочего процесса входят построение и тестирование, в создаваемом определении построения по умолчанию необходимо указать следующие сведения.

Для выполнения тестов из тестовых сборок, расположенных в папке размещения построений, агент тестирования использует программу mstest.exe, как показано на следующем рисунке. Для локального выполнения тестов с использованием агент построения можно использовать параметры тестирования по умолчанию (local.testsettings) из решения для тестируемого приложения.

Примечание

Для использования файла local.testsettings в процессе построения необходимо вернуть этот файл на сервер Team Foundation Server.

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

Построение и тестирование без агентов тестирования

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

Предупреждение

Не рекомендуется использовать контроллер тестирования с параметрами тестирования для удаленного выполнения тестов, указанными в определении построения.Для выполнения тестов с помощью контроллера и агентов тестирования следует использовать физическую или виртуальную среду, как описано в следующем разделе: Построение, развертывание и выполнение автоматических тестов из плана тестирования.

Если задачей пользователя является лишь обучение использованию Visual Studio, Team Foundation Server и Team Foundation Build для определения рабочего процесса, можно установить все компоненты на одном физическом компьютере или виртуальной машине. Однако подобная топология не рекомендуется при наличии нескольких пользователей и выполнении нескольких построений.

Примечание

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

Построение и Развертывание

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

Виртуальные среды

Для использования виртуальной среды, в которой построение и развертывание осуществляется с помощью Visual Studio Lab Management, применяется лабораторный шаблон по умолчанию. Этот лабораторный шаблон позволяется выполнить следующие действия.

  • Выбор используемой виртуальной среды.

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

  • Выбор определения построения или построения, используемого для развертывания приложения.

  • Добавление скриптов, выполняемых для развертывания приложения из папки размещения построений.

  • Создание снимка виртуальной среды после развертывания в качестве одной из задач рабочего процесса построения и развертывания.

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

Физические среды

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

Данную среду можно использовать для выполнения ручных или автоматических тестов из плана тестирования. Дополнительные сведения о выполнении этих тестов см. в разделах Выполнение ручных тестов с помощью средства выполнения тестов и Начальное руководство по выполнению автоматических тестов из плана тестирования.

Построение, развертывание и выполнение автоматических тестов из плана тестирования с использованием среды

Для выполнения автоматических тестов в рамках плана тестирования, реализуемого в процессе построения, развертывания и тестирования, необходимо использовать физическую или виртуальную среду. В определении построения используется программа tcm.exe для выполнения тестов. При выполнении данных тестов в составе рабочего процесса создается тестовый запуск, и результаты тестов можно просмотреть и проанализировать с помощью Microsoft Test Manager. Дополнительные сведения об анализе тестовых запусков см. в разделе Практическое руководство. Анализ тестовых запусков с помощью Microsoft Test Manager. Такой подход также позволяет просматривать журнальные данные о качестве построений. Можно определить наличие повторяющихся проблем с качеством построений и выявить области приложения, для которых имеются непройденные тесты.

При создании физической среды можно использовать физические компьютеры или виртуальные машины, а создание виртуальных сред осуществляется с помощью Visual Studio Lab Management. Виртуальная среда позволяет развертывать приложение с использованием каждой машины среды в известном состоянии из существующего снимка. Кроме того, можно создавать снимки среды после развертывания приложения, чтобы получить возможность возврата к известному состоянию для тестирования ошибки или выполнения ручных тестов. Виртуальная среда предоставляет гораздо более гибкие возможности. Дополнительные сведения о создании этих сред см. в разделах Создание физической среды, используемой для тестирования и Создание виртуальных сред.

Виртуальные среды

Для развертывания приложения в виртуальной среде можно использовать определение лабораторного шаблона по умолчанию, которое предоставляется в системе Team Foundation Build. Для использования виртуальной среды требуется Visual Studio Lab Management. Этот лабораторный шаблон позволяется выполнить следующие действия.

  • Выбор используемой виртуальной среды.

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

  • Выбор определения построения или построения, используемого для развертывания приложения.

  • Добавление скриптов, выполняемых для развертывания приложения из папки размещения построений.

  • Выбор наборов тестов, конфигурации теста и параметров тестирования для тестового запуска.

  • Создание снимка виртуальной среды после развертывания в качестве одной из задач рабочего процесса построения и развертывания.

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

Построение, развертывание и тестирование с использованием виртуальной среды

Физические среды

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

Построение, развертывание и тестирование с использованием физической среды

См. также

Основные понятия

Настройка тестовых компьютеров для выполнения тестов или сбора данных

Другие ресурсы

Настройка рабочего процесса Lab Management