当我运行这个时:

sh "#{MBUNIT_PATH}Gallio.Echo.exe /no-echo-results src/#{dll}/bin/Debug/#{dll}.dll"

在我的 rakefile 中,Gallio 运行我的 mbunit 测试,并且 团队城市 获取结果:D

但是这个:

sh "#{NUNIT_PATH}nunit-console.exe /nologo src/#{dll}/bin/Debug/#{dll}.dll"

确实运行了我的测试,但 TeamCity 没有获取结果:(

我首先尝试运行我的 单位 测试通过 加里奥, ,但它没有检测到任何测试:(

使用 teamcity NUnit 启动器我得到:

Failure executing test(s) on assembly nunittests.dll with NUnit 2.5.0.9122. Version 2.0 is not a compatible version.

有什么办法解决这个问题?我如何让 Gallio 接受我的 NUnit 测试,或者如何让 TeamCity 接受 nunit-console。

有帮助吗?

解决方案

您需要使用内置的 NUnit 运行程序。

如果您查看构建代理的目录,只需搜索 *.exe。应该有一个叫 NUnit-Runner.exe 或类似的东西。然后您需要使用它。

看看文章吧 使用 Rake 和 TeamCity 构建 .NET 解决方案. 。大约 3/4 的地方他表达了我的意思:

为了实现上述目标,我在 Ruby 中做了类似的事情。我设置了一个 $NUnit 变量,如果属性 ENV['AGENT_WORKING_DIR'] 存在,那么我使用 TeamCity NUnit 运行程序,否则我使用普通的 NUnit(也就是说,开发人员可以运行 Rake 脚本)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top