Como faço para obter TeamCity para pegar o meu NUnit testes executados a partir Rake?
Pergunta
Quando eu executar este:
sh "#{MBUNIT_PATH}Gallio.Echo.exe /no-echo-results src/#{dll}/bin/Debug/#{dll}.dll"
Na minha Rakefile, Gallio corre meus testes MbUnit e TeamCity pega os resultados: D
Mas esta:
sh "#{NUNIT_PATH}nunit-console.exe /nologo src/#{dll}/bin/Debug/#{dll}.dll"
for executado meus testes, mas não TeamCity não pegar o resultado: (
A primeira vez que tentou executar o meu NUnit testes através de Gallio , mas não detecta quaisquer testes: (
Usando o TeamCity NUnit lançador eu recebo:
Failure executing test(s) on assembly nunittests.dll with NUnit 2.5.0.9122. Version 2.0 is not a compatible version.
O que seria uma solução para isso? Ou como posso obter Gallio para pegar meus testes NUnit ou como faço para obter nunit-console para ser captado pelo TeamCity.
Solução
Você precisa usar o inbuilt NUnit corredor.
Se você olhar no diretório de um agente de compilação, basta procurar por * .exe. Deve haver um chamado NUnit-Runner.exe
ou algo parecido. Você precisa então usar isso em seu lugar.
Tenha uma olhada no artigo edifício .NET Solution com ancinho e TeamCity . Cerca de 3/4 do caminho para baixo, ele mostra o que quero dizer:
Para atingir o acima Eu fiz algo semelhante em Ruby. Criei uma variável $ NUnit, se a propriedade ENV [ 'AGENT_WORKING_DIR'] existe, então eu uso o corredor TeamCity NUnit, mais eu usar o NUnit normal (isto é, para que os desenvolvedores podem executar o script Rake).