2012-06-05 2 views
1

У меня есть встроенный непрерывный процесс сборки с помощью Cruise Control. В EOD он создает отчет о построении. Если какие-либо тесты NUnit терпят неудачу, сборка не выполняется. Мы написали один конкретный тестовый пример и добавили его в отдельную dll. Мы не хотим, чтобы наша сборка завершилась неудачей, если какой-либо тестовый пример в этой сборке завершился неудачно. Мы используем целевые файлы MSBuild, файлы .proj и систему управления круиз-контролем, конфигурационный файл ccnet.MSBuild Не должен терпеть неудачу, даже если один конкретный тест NUnit завершился неудачно

ответ

1

Я бы назвал NUnit два раза: один раз для тестов вы хотите сбой сборки, если они не проходят, а затем второй раз для запуска тестов, результаты которых вы не хотите влиять на сборку, например,

<!-- Any failing tests in Assembly1.dll will cause the build to fail. --> 
<Exec Command="nunit.exe Assembly1.dll" /> 

<!-- Any failing tests in Assembly2.dll won't fail the build because the ContinueOnError attribute is set to True. --> 
<Exec Command="nunit.exe Assembly2.dll" ContinueOnError="True" /> 
+1

Если какой-либо из тестов завершился с ошибкой, то при установке ContinueOnError в значение true выполняются оставшиеся тесты в этой сборке. Но все же сборка завершается неудачно, потому что мой тест терпит неудачу. Так ContinueInError = true не работает – user660232

Смежные вопросы