使用OpenCover进行Selenium测试覆盖

时间:2016-07-04 18:45:46

标签: selenium selenium-webdriver code-coverage opencover

背景: 我们有一个项目启动一个可以从Web界面GUI控制的服务。 我们没有使用特定的(从商业角度来看)Web服务器,而是围绕Windows服务的内部创建的包装器,它管理所有Web界面交互。

我们拥有什么: 现在我们开始使用Selenium&用于测试Web界面的MSTest,我们正试图获得这些测试的覆盖范围,而OpenCover似乎也在做这笔交易。问题是不是(或者我们正在做一些不同或错误的事情)。 我没有得到的唯一代码覆盖是用于启动Windows服务的方法和在进程中调用的所有其他方法(因为我也可以访问所有PDB),但之后没有任何内容,基于Selenium与浏览器交互的行为。

任何能够完成工作的提示/想法或其他工具(如果可能的话)都会受到赞赏。

1 个答案:

答案 0 :(得分:-2)

如果您正在运行ASP.net应用,则需要将OpenCover附加到IIS或IISExpress以获得使用selenium的准确代码覆盖率。这使得使用MSTest有点困难。您可能需要考虑将尽可能多的逻辑移入您的服务,并针对这些逻辑编写单元测试。

这是一个快速示例,可以将打开的封面附加到IIS OpenCover.Console.exe -target:C:\ Windows \ System32 \ inetsrv \ w3wp.exe -targetargs:-debug -targetdir:C:\ Inetpub \ wwwwoot \ MyWebApp \ bin \ -filter:+ [] -register:user