.net - NUnit 测试在 OpenCover 中失败

标签 .net unit-testing nunit code-coverage opencover

当直接使用 NUnit 执行时,我的测试工作得很好,但是当通过 OpenCover 执行时(仍然使用 NUnit 作为测试运行器),我得到以下错误:

ProcessModel: Default    DomainUsage: Single
Execution Runtime: Default

.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F
.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F. F.F.F.F.F.F.F.F.F.F.F.F.F.F.F
.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F
.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F
Tests run: 200, Errors: 0, Failures: 200, Inconclusive: 0, Time: 0,5410309 seconds
   Not run: 0, Invalid: 0, Ignored: 0, Skipped: 0

Errors and Failures:
1) SetUp Error : GeoGen.Studio.PlugInLoader.LoaderTests
   SetUp : System.MissingMethodException : Method not found: 'VoidSystem.CannotUnloadAppDomainException.SafeVisited(Int32)'.
       at GeoGen.Studio.PlugInLoader.LoaderTests..ctor()

2) Parent Failure : GeoGen.Studio.PlugInLoader.LoaderTests.AddPlugIn_ValidPlugIn_CreatesInstance
   TestFixtureSetUp failed in LoaderTests

每次测试都会重复错误 2。所有测试都应该通过(并且它们在 NUnit 中通过)。 Coverage 与 NCover 一起正常工作,但它的试用期已过,我买不起许可证。

感谢您的帮助!

最佳答案

我遇到了同样的问题 - 您似乎发布了一个 issue to github这帮助我解决了它,所以我将它发布在这里以供遇到相同问题的其他人使用:

我通过升级到 latest OpenCover 解决了这个问题(此时为 4.0.804)并在我调用 OpenCover 时添加 -oldStyle 开关。似乎最新的 OpenCover 正在输出 ReportGenerator 的内容不喜欢,所以我也必须升级它。

我不知道是什么导致了这个失败,它似乎来 self 们的 CI 服务器上的任何地方。希望对以后遇到这个问题的任何人有所帮助。

关于.net - NUnit 测试在 OpenCover 中失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9609760/

相关文章:

c# - 您如何将此查询转换为方法语法?

c# - 64 位 .NET 应用程序中是否忽略了 CallingConvention?

reactjs - 开 Jest : ReferenceError: KeyframeEffect is not defined

visual-studio - NUnit 和 Visual Studio 2008 集成测试可以并行使用吗?

c# - Selenium 在文本框中输入无效文本(半文本)

c# 在发送键之间暂停

Java - 平衡 BinarySearchTree 的 JUnit 测试

c++ - Boost单元测试链接错误

c# - 使用 LocalDB 进行集成测试

c# - 编译器常量、优化和性能