Quality Profiles
前言
质量配置文件服务是SonarQube的核心,因为您可以通过定义规则集来定义需求(例如:方法的复杂度不能超过10)。
理想情况下,所有项目都将用相同的配置文件进行测量,但这并不总是实用的。 例如,您可能会发现:
- 技术实现与一个应用程序不同(例如,构建线程或非线程Java应用程序时可能会应用不同的编码规则)。
- 您希望确保对某些应用程序(例如内部框架)的更高要求。
- 等等。
这就是为什么您可以根据需要定义多少个质量配置文件。要管理质量配置文件,请转到质量配置文件(顶部栏),您将在其中找到按语言分组的配置文件。
每个语言插件都附带预定义的内置配置文件(通常称为“Sonar方式”),以便您可以使用SonarQube分析快速入门。这就是为什么只要你安装一个新的语言插件,至少会有一个质量配置文件可供你使用。
每种语言必须具有默认配置文件(标有“默认”标签)。将使用语言的默认配置文件来分析与特定配置文件未明确关联的项目。
从新安装开始,将Sonar方式用作默认配置文件,因为它包含通常适用于大多数项目的所有规则。但作为一个最佳实践,您应该创建一个新的配置文件(您可以通过复制Sonar方式的内容来填充)并改用它。为什么?因为然后Sonar方式可以作为一个基准,您可以在对其进行更改时跟踪自己的配置文件(您将会)。此外,Sonar方式通常会随每个新版本的插件更新,以添加规则,有时会调整规则严重性。这些更改不会自动应用于配置文件的现有副本,但一旦您更新了副本,您可以将您的配置文件与Sonar方式基准进行比较,以查看添加了哪些新的默认默认规则。 (请参阅“确定我的个人资料中有所有相关的新规定”)。
将规则从一个配置文件复制到另一个
人们希望通过基于内置配置文件的配置文件进行工作,而无需实际更新内置配置文件。 在这种情况下,最简单的事情是转到原始配置文件,我们将其称为源(Source)“质量配置文件(Quality Profiles)”。 从那里,点击“Rules”页面上“Source”中的规则总数,然后搜索源规则(Source's rules)。 使用批量激活(Bulk Activate)在目标配置文件中打开源规则。
个人资料中的变化
当SonarQube注意到使用与以前分析不同的配置文件执行分析时,会将质量配置文件事件添加到项目的事件日志中。 要查看配置文件中的更改,请导航到配置文件(Quality Profiles > [ Profile Name ]),然后选择更改日志(Changelog)。 这可能有助于您了解配置文件更改如何影响分析中提出的问题。
将配置文件从一个SonarQube实例复制到另一个
使用源实例上的备份(Back up)功能将配置文件导出到XML文件。 使用目标实例上的还原配置文件(Restore Profile)功能来导入文件。 请注意,此功能存在一些限制:SONAR-5366-Make it possible to back up and restore customizations of rules OPEN.
将一套核心规则和附加规则应用于项目
假设您的公司具有所有团队必须遵循的最低限度的编码规则,但您希望添加特定于项目中使用技术的规则。这些规则对你的团队是有好处的,但对他人来说是无关紧要的,甚至是误导的。这种情况需要继承。设置基本配置文件,我们将使用您的核心规则将其称为Root。然后创建一个子配置文件,我们称之为Sprout。创建后,您可以将“父”替换为从“根”继承,然后添加缺少的规则。
确保非默认配置文件用于项目
每个语言的一个配置文件被标记为默认。除了任何其他干预之外,所有使用该语言的项目都将使用该配置文件进行分析。要通过非默认配置文件分析项目,从质量配置文件(Quality Profiles)开始,然后单击目标配置文件,然后使用界面的“项目(Projects)”部分来管理明确分配给配置文件的项目。
确保个人资料中有所有相关的新规定
每次发布语言插件更新时,都会添加新规则,但不会自动显示在您的个人资料中。如果您使用Sonar方式的内置配置文件,则可以使用“还原内置配置文件”选项将内置配置文件更新为全新安装。
如果您不使用默认配置文件,执行还原仍然是一个很好的第一步。然后,您可以将您的配置文件与内置配置文件进行比较,以查看您缺少的默认默认规则。
另一种选择是转到规则空间(Rules),并可用的搜索查看从升级相关插件的那一天起添加到平台中的规则。
最后,配置文件界面(Profile interface)本身将帮助您了解在界面右侧的“最新新规则”部分中添加的新插件版本中的规则。
比较两个简介
从质量配置文件(Quality Profiles)页面开始,点击您要比较的其中一个配置文件,然后使用操作>比较界面(Actions > Compare)选择第二个配置文件,并查看差异。
确保个人资料中没有任何废弃的规则
规则界面(Rules)本身的“弃用规则”(Deprecated Rules)部分是您的第一个警告,即配置文件包含不推荐使用的规则。此粉红色背景部分提供了配置文件中当前处于活动状态的已弃用规则的总数,以及每个配置文件的不推荐计数的细目。点击后,您可以转到规则(Rules)页面,以编辑相关的个人资料。
或者,您可以对配置文件中的规则进行规则搜索(手动或通过“质量配置文件”(Quality Profiles)页面进行点击),然后使用状态(Status)规则搜索方面将列表缩小为需要关注的列表。
安全
质量配置文件服务可由任何用户(甚至匿名用户)访问。所有用户都可以查看配置文件的各个方面。这意味着任何人都可以看到哪些规则包含在配置文件中,哪些规则被忽略,查看配置文件随着时间的推移而改变,并比较任何两个配置文件中的规则。
要使规则配置文件更改(创建,编辑或删除)必须授予用户“管理质量配置文件”和“Gates”权限。
项目管理员可以选择他的项目与哪个配置文件相关联。请参阅官网Project Settings解更多。