SonarCloud .NET Core 的覆盖范围非常严格。有什么办法可以改变这个吗?

SonarCloud .NET Core coverage is very strict. Is there any way to change this?

因此,我们将 SonarCloud 用于 Azure DevOps 管道中的 .NET Core MVC 项目。根据 SonarCloud,我们注意到我们的代码覆盖率非常低(< 50%),而我们有很多单元测试。我们的组织没有最低代码覆盖率规则或任何东西。 但是组织认为覆盖String Name { get; set; }这样的行是没有用的。

我们注意到 'Models' 项目根据 SonarCloud 的覆盖率非常低,而我们认为具有 nog 逻辑的模型不需要测试。

有没有办法影响覆盖规则? 有没有设置什么线需要覆盖,什么线不能覆盖?

欢迎提供有关该主题的任何信息。提前致谢。

设置您自己的自定义质量门配置文件非常容易。在显示组织所有项目的组织主视图上,组织名称正下方有一个名为 "Quality Gate" 的选项卡,该选项卡 select。左侧是当前使用的所有质量门配置文件。应该有一个名为 "Sonar way" 的,带有标签 "BUILT-IN" 和 "DEFAULT"。在右上角,有一个"Copy"按钮。复制 "Sonar way" 质量门,并相应地命名。创建新的质量门配置文件后,您可以修改覆盖率、重复行 (%)、可维护性评级、可靠性评级和安全评级参数。获得所需设置后,您需要分配项目以使用该质量门配置文件。您可以将新创建​​的质量门配置文件设为默认,这将使所有项目都使用该质量门配置文件。您还可以通过 select 项目标签下的 "Without" 按钮和 select 您希望使用新配置文件的项目,将新的质量门配置文件定位到特定项目。执行此操作后,您将在 "With" 按钮下看到您的项目。基本上,所有项目都将使用默认质量门配置文件,除非该配置文件专门分配给不同的质量门配置文件。

我发现这在项目的早期开发中非常有用,当您正在创建实体和服务模型时 类(或任何 POCO 样式 类),并且不想浪费您为 属性 访问器编写测试的时间。实现所有代码后,您就可以提高新代码的覆盖率要求。