繁体   English   中英

NUnit 2.5.6 + PartCover 2.0 / 4.0 =未显示我的类

[英]NUnit 2.5.6 + PartCover 2.0/4.0 = My Classes Not Shown

简介:我可以运行单元测试和代码覆盖,但报告只包含NUnit类,而不是我的应用程序类。

我过去成功使用过PartCover。 这次不是这样。 我尝试了最新的PartCover(4.0),降级到下一个最新版(2.0),都是NUnit 2.5.6。

我创建了一个简单的.NET 4.0类库(也尝试使用具有项目类库的Web应用程序),在某个命名空间中有一个类,在另一个类中的另一个库中有两个测试方法。

NUnit / PartCover安装正确; 我可以在NUnit中运行NUnit测试,也可以通过PartCover运行(我可以看到它们在运行并说“2通过”),但报告只显示了NUnit命名空间。 (是的,我使用+ [ ]作为我的覆盖规则。)

有任何想法吗? 尽管我喜欢NUnit,但我想看看我自己的课程:o)

我也尝试对齐测试DLL和代码DLL命名空间,但无济于事。

编辑:我尝试重新运行一年前我以前使用的代码覆盖的样本; 所有测试都会运行,但实际的项目命名空间不会出现。 这里有一个提示,这似乎意味着它取决于您使用的NUnit版本: http//sourceforge.net/projects/partcover/forums/forum/605222/topic/3308367 (是的,我已经尝试过appdomain-报告复选框)

我已经尝试过NUnit 2.5.5.x和2.5.6.x,两者都给了我相同的结果。

编辑:似乎官方4.0版本的这个分支似乎工作,虽然偶尔(谷歌的PartCover分叉,我不能添加更多的超链接)

疯狂。 显然,在NUnit打印出总传递/失败的摘要后,按键盘上的暂停/中断,并等待大约一秒钟,第二个“CoreProfiler已关闭”消息,使一切正常。

当然,这不是真正的解决方案。 当然,我可以装配一个批处理文件,它在执行NUnit后会睡1秒钟,但这似乎是一个重大的黑客攻击。

处理此问题的正确方法是将所需的运行时添加到nunit的配置中。 您会注意到NUnit在CLR 2.0而不是4.0中运行。 有许多这个问题的答案对SO,但我发现这个第一。 单独这样做会为我修复它。 请注意,您的运行时版本可能略有不同。 您可能需要确认。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM