2016-07-28 3 views
3

Я использую Cake как скрипт сборки и TeamCity для CI. У меня есть тесты на запуск Cake с NUnit, а затем TeamCity вытягивает эти результаты с помощью «процессора отчетов xml».Импорт результатов nunit в teamcity с тортом

Как вы можете видеть его импортировать файл, но откройте вкладку «Test» отсутствует, так что я не могу видеть результат теста.

Я пропустил шаг?

ответ

2

Это была проблема с NUnit-консолью. Я понизился до 3.2.1, и теперь он работает.

+0

Спасибо за сообщение об этом. Возможно, стоит исправить исходный вопрос с помощью этого решения или отметить его как принятый ответ. –

2

Мой торт задача для тестирования именно это и на вкладке Проверка отчета появляется

NUnit3(testsDir.ToString() + "/*Tests.dll", new NUnit3Settings 
{ 
    NoResults = true, 
    NoHeader = true, 
    Framework = "net-4.0", 
    Workers = 5, 
    Timeout = 10000 
}); 

Вам действительно нужно XML-отчет?

+0

Это связано с тем, что NUnit способен обнаруживать, что он работает на TeamCity, и предоставлять правильные служебные сообщения для загрузки результатов тестирования, не так ли? –

+1

да действительно. Для моих потребностей более чем достаточно – pitermarx

+0

Это не сработало для меня. –

1

Мне кажется, что ваши тесты не выполнялись должным образом (в отличие от правильного выполнения теста с ошибкой). Попробуйте запустить сборку локально, а затем проверьте содержимое файла TestResult.xml.

Если это выглядит хорошо, измените настройки проекта на TC, чтобы сохранить файл xml в качестве артефакта и сравнить то, что вы видите там, с успешным локальным запуском.

И, наконец, убедитесь, что тип отчета XML в конфигурации ТС установлен в NUnit.

Надеется, что это помогает, Марком

+0

Спасибо за этот знак. К сожалению, тест намеренно не удалось попробовать. Я представил неудачный тест, чтобы увидеть, возник ли отчет, когда возникла проблема. Я могу подтвердить, что TestResult.xml выглядит хорошо и соответствует ожидаемому. Я до сих пор не хочу работать –

0

У меня возникла аналогичная проблема, когда Teamcity 9.X не удалось загрузить nunit 3 xml, потому что более старая версия функции сборки синтаксического анализа teamcity не понимает этот формат.

я получить его работу путем преобразования Nunit результат XUnitlink to the xslt! и импортировать файл как junit результат.

Task("Run-Unit-Tests") 
.Does(() => 
{ 
    DotNetCoreTest("./Project");   
}).Finally(() => 
{ 
    XmlTransform("./nunit3-xunit.xslt", "./TestResult.xml", "./NUnit.WebApp.FunctionnalTests.TestResult.xml"); 
    if(TeamCity​.IsRunningOnTeamCity) 
    {  
     TeamCity.ImportData("junit","./NUnit.WebApp.FunctionnalTests.TestResult.xml"); 
    } 
}); 
Смежные вопросы