TeamCity: Управление зависимостями развертывания для приемочных тестов?

Я пытаюсь настроить набор конфигураций сборки в TeamCity 6 и пытаюсь смоделировать конкретное требование самым чистым способом, который возможен в TeamCity.

У меня есть набор приемочных тестов (около 4-8 наборов тестов, сгруппированных по функциональной области системы, к которой они относятся), которые я хочу запускать параллельно (я смоделирую их как конфигурации сборки, чтобы их можно было распределить по набору агентов ).

Исходя из моих первоначальных исследований, Похоже, что наличие конфигурации мета-сборки AcceptanceTests , которая извлекает набор отдельных конфигураций приемочных тестов через зависимости снимков , должно помочь. Затем все, что мне нужно сделать, это сказать, что моя конфигурация сборки Commit должна запускать AcceptanceTests , и все они будут задействованы. Итак, допустим, у меня также есть AcceptanceSuiteA , AcceptanceSuiteB и AcceptanceSuiteC

Пока все хорошо (я знаю, что могу повернуть его наоборот и вызвать запуск конфигурации Commit AcceptanceSuiteA ,

Есть ли способ в TeamCity смоделировать такую ​​иерархию?

РЕДАКТИРОВАТЬ: Идеи: -

Дерьмовое решение состоит в том, что DeploySite может установить маркер «флаг использования», а затем конфигурация AcceptanceTests очищает этот флаг [после завершения AcceptanceSuiteA и AcceptanceSuiteB ]. Тогда проблема заключается в том, что следующий DeploySite в конвейере будет ждать, пока указанный шлюз не откроется снова (выполнение блокирующего ожидания в сборке кажется неправильным - я хочу, чтобы он был помечен как «еще не началось ', а не выглядело так, будто нужно много времени, чтобы что-то сделать). Однако такие вещи являются флагом и проверяют этот бит, это вид изменчивого состояния / запаха нестабильности, от которого я пытаюсь избавиться.

РЕДАКТИРОВАТЬ 2: если бы я мог программно изменить конфигурацию агента, я мог бы установить Требования к агенту так, чтобы требовать InUse = false , а затем установить флаг при запуске развертывания и сбросить его после запуска тестов

6
задан Ruben Bartelink 11 April 2011 в 11:55
поделиться