我想测量UI集成测试的覆盖率,所以我需要将OpenCover应用于正在运行的ASP。NET应用程序,而不是测试执行。(我已经通过在vest . console . exe上运行OpenCover获得了单元测试的覆盖率。)
当我从Visual Studio 2013中启动应用程序时,它看起来像是在运行iisexpress.exe。我怎么能弄清楚什么命令行VS正在运行,所以我可以通过相同的命令行OpenCover?
好了,我明白了。
正确使用的命令行是iisexpress.exe /site:[sitename]
,其中sitename
匹配您的web项目在Visual Studio中调用的任何名称。仅指定项目的路径将无法提供所需的结果。
要获得OpenCover的测试覆盖率,您可以运行
OpenCover.console.exe -target:iisexpress.exe -targetargs:"/site:sitename" -register:user
假设您在与PDB文件构建的web项目相同的目录中,否则您可能需要使用-targetdir
参数来OpenCover