【问题标题】:Setting up Coverage Exclusion in sonarqube在 sonarqube 中设置覆盖排除
【发布时间】:2018-11-17 01:05:07
【问题描述】:

我想设置覆盖排除,以便我的测试代码不会在我的项目概述中报告为未经测试。

我正在使用 SonarQube 7.0 版(内部版本 36138)和 Visual Studio 2015 项目。结果来自一个在 jenkins 上运行的跑步者。

我在 SonarQube 服务器上使用设置了通用代码覆盖率规则。 Administration -> Configuration -> General Settings -> Analysis Scope -> Code Coverage -> Code Exclusions 我将规则设置为 **/_Test*/**/*.*

工具提示显示这将是密钥sonar.coverage.exclusions,根据Narrowing The Focus,您应该使用它。

我的期望是我使用的模式匹配。 **零个或多个目录,后跟以_Test*开头的目录,然后是**零个或多个目录,最后匹配所有文件*.*

但是,即使我重新运行项目,也不会应用此规则。

文件

MySolution/_TestQ1/Component/MyComponentTest.cs

仍然会出现在报告中。

有什么方法可以快速测试我的规则吗? 我的规则有什么根本上的错误吗? 如何排除测试?

【问题讨论】:

    标签: sonarqube automated-tests


    【解决方案1】:

    我使用的是 6.7 版本,但我相信这也适用于 7.0 版本。

    基本上,如果您转到“管理”>“配置”>“常规设置”>“MSBuild 扫描仪”,您将看到测试项目模式如下:

    [^\\]*test[^\\]*$
    

    有信息:

    已弃用 - 在扫描仪中使用“sonar.msbuild.testProjectPattern”键 用于 MSBuild(客户端)。测试匹配的正则表达式 项目文件路径(.NET 语法)

    键: sonar.cs.msbuild.testProjectPattern

    这些是您应该添加/修改测试项目模式的地方。

    【讨论】:

    猜你喜欢
    • 2021-12-29
    • 2021-08-29
    • 2021-12-20
    • 2018-12-25
    • 2019-05-06
    • 2018-06-04
    • 2018-11-03
    • 2016-02-29
    • 2018-10-07
    相关资源
    最近更新 更多