【发布时间】:2015-08-18 15:07:56
【问题描述】:
我们将 dotCover 用作 TFS 上的门控签入的一部分,以确保代码覆盖率至少达到一定百分比。我已经更改了构建过程以执行构建、运行 dotCover 并分析输出,但在项目中包含的 nuget 包方面发现了一个问题。
如果 nuget 包包含 .pdb 文件,dotCover 似乎认为它是分析和覆盖的公平候选者,这完全歪曲了结果。作为一种解决方法,我可以从解决方案中包含的包中删除 .pdb 文件,但这绝不是理想的,因为对 nuget 包的每次更新都可以将它们恢复。
请注意,dotCover 的 VisualStudio 界面不会遇到同样的问题。
谁能建议一种更强大的方法,我可以将 nuget 包排除在 dotCover 分析中吗?
干杯
【问题讨论】:
-
您是否尝试指定排除过滤器? "/Filters=ARG: 使用以下语法指定覆盖过滤器:+:module=*;class=*;function=*; 使用 -:myassembly 从代码覆盖中排除程序集。这里支持星号通配符 (*)。"
-
@Maria 是的,尝试了这些,但不幸的是,他们倾向于从目标文件夹中删除所有 pdb 文件,这将导致根本没有代码覆盖率分析。理论上可能是可能的,但从我的尝试来看完全不切实际。无论如何感谢您的建议。
-
您是否使用此模式指定了过滤器 -:[module_name]?或者,也许您可以在这里发布使用过的过滤器?或者,在这里提交请求:dotnettools-support.jetbrains.com/anonymous_requests/new
-
我遇到了同样的问题,但我什至无法让排除过滤器工作。最后为它提交了一张票给 TeamCity (youtrack.jetbrains.com/issue/TW-48404)。
标签: tfs nuget nuget-package dotcover