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


Использование системы построения для работы с тестами

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

Содержание раздела

  • Подготовка к выполнению тестов в процессе построения

  • Работа с тестами в построении, основанном на шаблоне DefaultTemplate.xaml

    • Необходимые разрешения

    • Выполнение автоматических тестов

    • Временное отключение тестов

    • Включение анализа влияния на тесты

  • Работа с тестами в процессе построения, основанном на пользовательском шаблоне

  • Дополнительные сведения

Подготовка к выполнению тестов в процессе построения

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

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

Работа с тестами в построении, основанном на шаблоне DefaultTemplate.xaml

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

Необходимые разрешения

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

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

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

  • тесты для выполнения;

  • параметры, используемые для выполнения теста;

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

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

  1. На вкладке Процесс определения построения разверните узел Основной.

  2. Выберите поле Автоматические тесты и нажмите в нем кнопку с многоточием (...).

    Откроется диалоговое окно Автоматические тесты.

  3. Выполните одно из следующих действий.

    • Щелкните Добавить для добавления нового тестового запуска.

    • Для изменения существующего тестового запуска выберите его и щелкните Изменить.

    Откроется диалоговое окно Добавить/Изменить тест.

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

    • Спецификация файла сборки для тестирования (рекомендуется).

      Если требуется, чтобы агентом построения выполнялся рекурсивный поиск всех DLL-файлов, соответствующих спецификации *test*.dll, в подкаталоге binaries рабочего каталога агента построения, оставьте значение по умолчанию (**\*test*.dll). Можно также изменить спецификацию файла в соответствии с конкретными потребностями.

      (Необязательно) Укажите файл параметров тестирования для настройки выполнения тестов. Дополнительные сведения см. в разделе Создание параметров тестирования для запуска автоматических тестов из Visual Studio.

    • Файл метаданных теста (VSMDI-файл).

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

      Дополнительные сведения см. в разделе Определение списков тестов для группировки тестов.

  5. Перейдите на вкладку Условия/Аргументы.

  6. (Необязательно) Выполните фильтрацию тестов для запуска по категориям.

    Дополнительные сведения см. далее в подразделе Задание категорий тестов.

  7. (Необязательно) Выполните фильтрацию тестов для запуска по приоритетам.

    Совет

    Назначая тестам приоритеты, можно использовать этот параметр для соблюдения баланса между тестированием и быстрым построением.

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

    Задайте для параметра Максимальный приоритет теста положительное целое число не меньше значения Минимальный приоритет теста или -1, чтобы указать, что максимального значения нет.

  8. Если требуется, чтобы построение завершалось ошибкой в случае сбоя любого из тестов данного тестового запуска, установите флажок Завершить построение при ошибке теста. Если оставить этот флажок снятым, то в случае сбоя теста для состояния выполненного построения будет установлено значение Частично успешно.

  9. Нажмите кнопку ОК.

Задание категорий тестов

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

Назначение тестам категорий

С помощью Test Professional можно назначать тестам категории. Например, можно создать категорию тестов CI (непрерывная интеграция) и указать эту категорию в построениях непрерывной интеграции. Можно создать другую категорию для тестов проверки построений и затем указать эту категорию в запланированных построениях, таких как построения, выполняемые ночью.

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

Задание категорий тестов для тестового запуска

Категории теста можно задать следующими способами.

  • при создании тестового запуска, как описано ранее в этом разделе;

  • путем изменения существующего тестового запуска. (для изменения существующего тестового запуска последовательно разверните узел Основной, узел Автоматические тесты и тестовый запуск, который необходимо изменить, а затем щелкните поле Фильтр категорий).

Категории тестов указываются одним из следующих способов.

  • Задание одной категории тестов, которую требуется включить или исключить. Допустим, имеется категория тестов с именем bvt. Присвойте этому параметру значение bvt для выполнения только тестов из этой категории или !bvt, чтобы выполнить все тесты за исключением данной категории.

  • Задание нескольких категорий тестов с помощью оператора && ("и") и оператора ! ("не"). Например, можно указать выражение quick&&gui&&!deep, чтобы выполнять только тесты, принадлежащие одновременно категориям quick и gui, но не категории deep.

  • Задание нескольких категорий тестов с помощью оператора | ("или") и оператора ! (оператор "не"). Например, можно указать выражение quick|gui|!deep, чтобы выполнять тесты, принадлежащие категории quick или gui, а также все тесты, не принадлежащие категории deep.

Настройка нескольких тестовых запусков

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

  • Имеется два набора тестов.

    • Набор основных тестов высшего приоритета, которые должны завершиться успешно. Добавьте тестовый запуск, в котором для параметров Минимальный приоритет теста и Максимальный приоритет теста указывается значение 1. Установите флажок Завершить построение при ошибке теста.

    • Набор менее важных тестов, которые требуется выполнить. В случае их сбоя построение по-прежнему можно будет использовать. Добавьте тестовый запуск, в котором для параметра Минимальный приоритет теста указывается значение 2, а для параметра Максимальный приоритет теста — значение 3. Не устанавливайте флажок Завершить построение при ошибке теста.

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

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

Временное отключение тестов

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

Включение анализа влияния на тесты

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

Включение анализа влияния на тесты

  1. Настройте анализ влияния на тесты в файле параметров тестирования.

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

  2. Создайте тестовый запуск, настроенный для использования файла параметров тестирования.

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

  3. Разверните узел "Дополнительно" и убедитесь, что для параметра Анализировать влияние на тесты установлено значение Истина, а для параметра Отключить тесты — значение Ложь.

Работа с тестами в процессе построения, основанном на пользовательском шаблоне

Можно запускать тесты и анализировать влияние изменений в коде на тесты в процессе построения, основанном на пользовательском шаблоне. Дополнительные сведения см. в разделе Запуск тестов (действие MSTest).

Дополнительные сведения

В разделе Определение построения с помощью шаблона по умолчанию представлено больше информации о создании определения построения на основе шаблона DefaultTemplate.xaml.

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

См. также

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

Определение процесса построения

Журнал изменений

Дата

Журнал

Причина

Май 2011

Добавлен раздел.

Улучшение информации.