Всем привет. Переходим к очередному, третьему, шагу в настройке и использовании TeamCity для нужд автоматизации.
Наши юнит-тесты являются отдельным проектом внутри решения. Они были скомпилированы на предыдущем шаге – остается их запустить.
Добавляем новый шаг, только теперь выбираем другой Runner – NUnit. Здесь также нужно обратить внимание на параметр Execute step. Он указывает, при каких условиях нужно выполнять степ, и имеет 4 значения:
- If all previous steps finished successfully (zero exit code) – если все предыдущие шаги завершились без ошибок. Сама проверка выполняется чисто на агенте.
- Only if build status is successful – в отличие от предыдущего агент ещё и уточняет у сервера TC статус билда. Нужно для более строгого управления логикой задания, например, если возврат нулевого кода на конкретном шаге для нас является ошибкой;
- Even if some of the previous steps failed – если даже какой-то из предыдущих шагов завершился с ошибкой;
- Always, even if build stop command was issued – выполнять шаг, даже если дана команда на отмену выполнения сборки.
Но самое важное – указать правильный путь к сборке с тестами внутри проекта в графе Run tests from. У нас он выглядит так:
1 |
**\bin\**\*UnitTests.dll |
Отмечу отдельно опцию Run recently failed test first. Если при предыдущем запуске какие-то тесты упали, то в следующем первыми запустятся именно они, и вы быстро сможете узнать об успешности последних изменений.
Теперь у нас есть два шага:
Запустим – Run сборку и запуск тестов. После завершения можно увидеть, что 12 тестов выполнились успешно:
Список юнит-тестов: