Как сделать так, чтобы сбои OneTimeSetUp не выполняли тесты в TeamCity

#nunit #teamcity #nunit-3.0

#nunit #teamcity #nunit-3.0

Вопрос:

Я только что столкнулся со сценарием, в котором TestFixture OneTimeSetup метод a потерпел неудачу, но TeamCity сообщил, что все тесты пройдены.

Я вижу в журнале, что TC сообщает о 14 красных строках текста, по одному разу для каждого из 14 тестов в приборе:

[Шаг 1/1] OneTimeSetUp: <… текст сбоя …>

Тесты выполняются с [Parallelizable(ParallelScope.Fixtures)] атрибутом, который может быть связан — я не знаю.

В конце журнала я вижу сводку (не выделенную красным цветом), в которой снова суммируются 14 сбоев.

[11:26:48] [Шаг 1/1] Ошибки и сбои

[11:26:48] [Шаг 1/1]

[11:26:48] [Шаг 1/1] 1) Сбой: бла-бла-бла…

НО сборка не завершается сбоем, и на самом деле тесты выполняются успешно.

Мы используем TeamCity 10.0.2 (сборка 42234) и «NUnit 3.0» (в соответствии с настройками TC — мы используем 3.2.1 в нашем реальном проекте)

Ответ №1:

В NUnit 3.2.1 была ошибка, из-за которой сбои в a OneTimeSetUp на самом деле не приводили к сбою набора тестов — это означает, что такие инструменты, как TeamCity, не смогут обнаружить сбой.

Это было исправлено в NUnit 3.4 — обновление до последней версии NUnit должно решить вашу проблему. Проблема с GitHub, для справки: https://github.com/nunit/nunit/issues/1379

Комментарии:

1. ха, невероятно! Спасибо

2. Для других заинтересованных лиц проблема заключается в nunit-console.exe в частности, не с помощью nunit.framework. dll или другие компоненты. Вам нужно убедиться, что вы не используете версию 3.2.1 из nunit-console.exe