DotCover:IIS 应用程序命令行的代码覆盖率

DotCover : Code coverage from commandline for an IIS Application

我正在尝试分析部署在 IIS 上的 MVC 应用程序的代码覆盖率

我能够成功地使用 DotCover 前端进行分析,因为它有针对 IIS 应用程序的选项。

但问题是当我试图从命令行执行它时。我需要知道,我的配置文件应该指定什么。

专门针对 IIS 应用程序(非 IIS Express)的示例 XML 配置文件会有所帮助。

遗憾的是,无法通过 dotCover 控制台运行程序覆盖 IIS 应用程序。当此功能实施时,请关注票证以获得通知:https://youtrack.jetbrains.com/issue/DCVR-5921.

此功能自 build 2018.1 起可用 https://www.jetbrains.com/help/dotcover/Remotely_Cover_a_Web_Application.html

获取 Web 应用程序 (IIS) 的覆盖范围 确保您拥有服务器的管理权限。 使用 dotCover 控制台运行器,开始覆盖 IIS 服务。例如:

dotCover.exe cover-iis /Output=coverageReport.xml /Instance=1

这里Instance是当前dotCover.exe实例的ID。您将使用此 ID 向此控制台运行器发送命令。 在涵盖的应用程序中,完成所需的场景或执行执行此操作的测试。 运行 将 "get snapshot and kill process" 命令发送到第一个 运行 实例的第二个控制台运行器实例:

dotCover.exe send /Command=GetSnapshotAndKillChildren /Instance=1

此处实例是您在第 2 步中指定的第一个 dotCover.exe 实例的 ID。 发送命令后,IIS 服务和 dotCover.exe 个实例将停止,覆盖率快照将被保存。