1

我设置了一个 .NET 解决方案,其中包含主要的 ASP MVC 项目,然后是一个已添加 NUnit 以进行单元测试的类库项目。

当我在 TeamCity 中构建解决方案时,主项目构建良好,但是当测试项目构建时,我得到了这些错误

error BC30002: Type 'TestFixture' is not defined. 
error BC30002: Type 'Test' is not defined. 
error BC30389: 'System.Diagnostics.Assert' is not accessible in this context because it is 'Friend'. 

我假设它找不到NUnit.dll或其他东西,但 dll 在解决方案包文件夹中。我已经尝试过先进行包恢复,以防万一,但它仍然做了同样的事情。

更新 好的,只是为了测试它,我将 Moq 添加到项目中以查看它是否会获取参考。它确实并且工作正常,当我尝试使用 NUnit 函数时,这似乎是唯一的问题。我可以禁止它构建,但肯定不会在 Team City 中进行 NUnit 测试?

谢谢!

4

1 回答 1

0

终于解决了这个问题,这是我自己的愚蠢错误。感谢 DevOps 建议通过 MSBuild 日志,它帮助我找到了问题。

实际的 DLL 没有被签入源代码控制,因为添加测试项目的开发机器有一个全局忽略文件来忽略所有 DLL。所以我以为它在那里,但它只是 .xml 文件,我读错了。

无论如何,它现在构建并运行测试。

感谢大家的帮助

于 2015-05-22T09:23:18.807 回答