5

我正在寻找一个 .NET 覆盖工具,并且一直在尝试 PartCover,但结果喜忧参半。我看到OpenCover旨在取代 PartCover,但到目前为止我还无法将它与 TypeMock Isolator 链接,因此我的模拟测试在收集覆盖信息时通过了。

我尝试复制我的 Partcover 设置,但没有定义的配置文件名称可与 Isolator 的“链接”参数一起使用。认为 OpenCover 是基于 Partcover 的,我试图告诉 Isolator 与 Partcover 链接,它没有抱怨(我仍然安装了 Partcover),但链接不起作用 - Isolator 认为它不存在。

我错过了一步吗?有解决方法吗?还是我必须等待与 OpenCover 成为朋友的 Isolator 版本?

4

1 回答 1

4

注意:我在 Typemock 工作

我稍微研究了一下配置,并设法让 OpenCover 与 Isolator 一起运行良好。在我们添加官方支持之前,您可以采取以下措施使它们协同工作:

  1. 通过运行注册 OpenCover 分析器runsvr32 OpenCover.Profiler.dll(您需要管理员的访问权限)。
  2. 找到文件typemockconfig.xml,它应该在您的安装目录下,通常是C:\Program Files (x86)\Typemock\Isolator\6.0.
  3. 编辑文件,并在文件末尾添加以下条目,如上</ProfilerList>
<Profiler Name="OpenCover" Clsid="{1542C21D-80C3-45E6-A56C-A9C1E4BEB7B8}" DirectLaunch="false">
  <EnvironmentList />
</Profiler>

保存文件,您现在将在 Typemock 配置实用程序中有一个新条目,称为 OpenCover。按链接按钮将它们链接起来。您现在可以使用OpenCover.Console.exeIsolator 运行测试。例如,以下是使用 MSTest 运行测试的方法:

OpenCover.Console.exe 
-target:"C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\MSTest.exe"
-targetargs:"/testcontainer:"d:\code\myproject\mytests.dll"   
-output:opencovertests.xml

运行它仍然存在一个小问题TMockRunner -link(即,延迟链接)。我需要在工作中进一步研究它。

希望有帮助。

于 2011-07-15T13:18:49.670 回答