我只是想尝试OpenCover
从我的应用程序中获取覆盖率统计信息。但我不太了解如何使用它。所以这里是我的问题?dll必须在同一个目录中吗?(我的解决方案有几个项目)有什么例子可以让 Coverage 使用OpenCover
吗?是否需要在开发服务器中IIS Express
或与ASP.NET
开发服务器一起运行站点可以?
非常感谢!
我只是想尝试OpenCover
从我的应用程序中获取覆盖率统计信息。但我不太了解如何使用它。所以这里是我的问题?dll必须在同一个目录中吗?(我的解决方案有几个项目)有什么例子可以让 Coverage 使用OpenCover
吗?是否需要在开发服务器中IIS Express
或与ASP.NET
开发服务器一起运行站点可以?
非常感谢!
我将开盖设置为外部工具,以使我更轻松。
下载 exe 并将其放在路径尽可能短的文件夹中。然后设置和外部工具如下:
Title : Open Cover {this is your choice}
Command: {your path to opencover}\OpenCover.Console.exe
Arguments: -register:user -target:"C:\Progra~1\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" -targetargs:"$(TargetName)$(TargetExt)" -output:coverage.xml -targetdir:"$(ProjectDir)\bin\debug"
Initial directory: $(TargetDir)
将其设置为使用输出窗口并在退出时关闭。您需要调整测试运行程序以适合您,我使用 vs2012,如果您也这样做,那会让您更轻松。
要使用它,请在解决方案资源管理器中单击您的测试项目,然后单击打开封面外部工具,它将为您生成覆盖率报告。我将它与报告生成器一起使用。
也将其设置为外部工具:
Title: Report Generator
Command: {Your path to report generator}\ReportGenerator.exe
Arguments: $(TargetDir)coverage.xml $(TargetDir)\coverageResults
同样,设置为在退出时关闭并使用输出窗口。
生成覆盖率报告后,您可以使用报告生成器创建一个漂亮的 html 版本,您可以点击查看统计信息。
hth
与OpenCover一起安装的文档包含很多关于运行 OpenCover 的有用信息。您应该在下载包 (MSI/ZIP/NUGET) 中有此文件的副本https://github.com/sawilde/opencover/blob/master/main/OpenCover.Documentation/Usage.pdf
DLL 不需要都在同一个目录中,但您通常会发现这是由于构建过程而发生的。您要从中收集覆盖范围的任何程序集都要求这些程序集的 PDB 与程序集位于同一目录中或位于targetdir开关引用的文件夹中。
是的,您可以使用它来运行 iisexpress 或 ASP.NET 开发服务器使用目标开关。