Я настраиваю тестовую сборку TFS и хочу поддерживать полное параллельное тестирование. Лишь некоторые из наших тестов выполняются параллельно, и поэтому после их завершения в агенте сборки агент сборки не получает новые тесты для тестирования. Следовательно, сборка, на которую у нас ушло 30 минут, начинается с часа и более, потому что все тесты переименования выполняются только на одном агенте сборки. Все остальные 20 агентов сборки перестают работать через несколько минут, потому что они завершили выполнение основной части тестов. Мы запускаем наши параллельные тесты с MSTest2. Наш RunSettings.runSettings объявляется запущенным как параллельный и является правильным.
Мы пробовали различные расширенные параметры выполнения в сборке. Мы пробовали на основе прошедшего времени выполнения тестов. на основе количества тестов и агентов и на основе тестовых сборок. Ни один из них не работает - после того, как агент завершил большую часть своих тестов, он просто возвращается в режим ожидания. Мы попытались включить машину в сборку, чтобы получить только один тест для каждой партии, и это действительно было быстрее, но мы потеряли привилегию параллельного тестирования на каждой машине.
Мы хотим, чтобы наша сборка работала следующим образом: мы запускаем ее, и запускаются тесты. Все машины получат количество тестов для запуска. Когда агент сборки завершит выполнение всех заданных ему тестов, он получит тесты от машины, которая не завершила выполнение своих тестов. Таким образом, мы будем наслаждаться параллельной тестовой сборкой и параллельными тестами на машине. Мы не хотим доходить до того момента, когда наша сборка состоит из 2 шагов: 1 шаг, который запускает тесты параллельно, и другой, который запускает наши тесты, которые не являются параллельными.
Можно ли создать сборку, отвечающую всем вышеперечисленным? Мы начали терять голову из-за этого и не нашли примеров сборок, которые будут работать так, как мы хотим. Или как хотя бы изменить настройки, чтобы агент сборки не переставал получать новые тесты после того, как он закончил свою массу.
С уважением, и я надеюсь, что я достаточно ясно выразился.