问题标签 [opencover]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
branch - OpenCover 中表达式的分支覆盖率
分支覆盖是否适用于以下语句?
我期望一个红色指示器,因为第一个表达式只有测试它是假的而不是真的。
第一个表达式总是假的,第二个有时是真的:
nunit - OpenCover -register 参数导致未处理的异常
当我在 Opencover 中使用 -register 选项时,我得到一个未处理的异常
我试过 -register 和 -register:user 都给了我同样的错误。这只发生在我在 Jenkins 中运行它时。
那么有人可以解释 -register 参数的意义是什么,以及我怎样才能让它在 Jenkins 中工作?谢谢。
更新:我不确定为什么 -register 参数在 Jenkins 中不起作用,但我最终在 Jenkins 之外注册了分析器,现在它可以工作了。不理想,但至少有一个解决方法。尽管如此,仍然想找到一个适当的解决方案。我不确定其他人是否有这个问题,但也许值得在 GitHub 上进行一些 wiki 条目。
cruisecontrol.net - 使 OpenCover 报告在 CruiseControl.NET 中可用
我正在尝试将OpenCover与CruiseControl.NET集成。此时我已经通过构建系统进行了修改,因此它在 OpenCover 下运行我的 nunit 测试。然后,我从使用ReportGenerator的报告中生成 Xml 和 Html 报告。
假设可以将 ReportGenerator 生成的报告集成到 CruiseControl.NET webapp 中,我该如何集成这两者?
NCover 有它自己的NCoverReporting 任务可以使用,但由于我没有运行 NCover,我无法将其输出与 OpenCover 生成的 XML 报告进行比较。
相关想法/问题:
- OpenCover 默认生成一个 XML 文件,但是 cc.net 可以使用该 XML 文件吗?
- ReportGenerator 还生成 XML,它们是否适用于 cc.net 之类的东西?
- cc.net 有一个合并日志的File-Merge发布者,但我还没有找到任何说明 cc.net 有用/使用哪些文件格式的文档。
unit-testing - 我如何获得这些代码示例的完整 OpenCover 分支覆盖?
我想测试以下两种(不相关的)方法并使用 OpenCover 2.0.802.1 实现完整的分支和语句覆盖
我编写了以下(NUnit)测试,其中一个使用“Moq”模拟对象:
但是,在通过 OpenCover 运行测试后,该coverage.xml
文件始终包含一个分支点,两个测试的访问计数均为零。序列覆盖率显示为 100%。
作为 IL 专家,我不确定如何编写进一步的测试以使分支覆盖率达到 100%。
mstest - 使用 MSTest 的 OpenCover 输出分析相同的程序集两次
我第一次尝试在当前项目中使用 opencover,并且刚刚让它与我的 mstest 项目一起使用。不过我遇到了一个问题,因为 opencover 输出 xml 似乎试图分析同一个程序集两次。另外值得注意的是,其中一个分析显示代码覆盖率为 0%(这是错误的),而另一个更像是 85%(这是正确的)。
我的 opencover 命令如下所示:
这是指单个程序集和该程序集中的单个类。但是,xml 输出有 2 个模块部分,具有相同的哈希值。有趣的是,第一个模块的 FullName 指向我的“\bin\Debug\MyAssembly.dll”文件夹中的程序集,而第二个模块指向“C:\temp\TestResults...\Out\MyAssembly”中的输出程序集.dll”。
有任何想法吗?
马特
code-coverage - 通过调用 OpenCover 中的函数过滤代码覆盖率
我有一些为 MsTest 编写的集成测试。集成测试具有以下结构:
我需要按调用者过滤函数的代码覆盖率结果。也就是说,我希望仅在从名为“When”的函数调用该函数或应用了某个属性时才考虑覆盖范围。
现在,即使在某些测试的EstablishContext部分调用了系统中的某个方法,该方法也被标记为已访问。
我相信对此没有过滤器,我想自己进行更改,因为 OpenCover 是……嗯……是开放的。但我真的不知道从哪里开始。谁能指出我正确的方向?
continuous-integration - 我可以从 OpenCover 获得代码覆盖率吗
作为 CI 构建过程的一部分,我正在使用 OpenCover(和 ReportGenerator)来检查我的代码覆盖率。
如果覆盖率不符合给定阈值,是否有可能让 OpenCover 使我的构建失败?
我环顾四周,但找不到任何方法来实现这一目标。我可以查看生成的报告吗?
编辑:对不起,我应该提到我正在使用 Nant 构建脚本。
.net - 如何使用 OpenCover 连接到服务?
作为代码覆盖测试的一部分,我需要测试几个服务。OpenCover github 提到了执行此操作的能力(问题 #36),但没有告诉您如何操作。wiki“使用”页面没有提到任何关于此的内容。opencover -?
提到了-service
开关,没有任何描述它的作用,确切的或如何使用它。谁能告诉我这个开关是如何工作的以及我如何使用它来连接服务?
mstest - OpenCover 显示 0 行被 mstest 覆盖
'这是输出......'
这是我使用的命令
(我什至尝试过 regsvr32 来注册配置文件并且我正在使用 XP)实际上我是 Nunit、mstest 和 opencoverage 的初学者,我在http://www.nunit.org/index.php?p=
找到了示例单元测试用例quickStart&r=2.4所以
** Nunit 测试类如下**
上面的类与 Nunit 和 Opencoverage 一起工作正常,也显示了准确的数据,但是在替换 mstest 特定属性后相同的类没有工作,所以在发布这个问题后,我认为这个方法必须是静态的并添加了 TestContext 参数。所以我做了代码更改(粗体),如下和上面的命令工作正常。
MSTest 类
.net - NUnit 测试在 OpenCover 中失败
当直接使用 NUnit 执行时,我的测试工作得很好,但是当通过 OpenCover 执行时(仍然使用 NUnit 作为测试运行器),我收到以下错误:
每次测试都会重复错误 2。所有测试都应该通过(并且它们在 NUnit 中通过)。Coverage 与 NCover 一起正常工作,但它的试用期已过期,我买不起许可证。
谢谢你的帮助!