代码优先级含义

Codenarc priority meanings

我是 CodeNarc 的新手。经过大量谷歌搜索后,我仍然没有找到 3 个 CodeNarc 发现优先级意味着什么的明确指示。现在我认为优先级 1 可能意味着关键,必须修复。但是其他优先级是如何定义的?

为了进一步说明,我主要将其用于安全规则集。

CodeNarc 规则优先级未在任何地方明确定义。

当您使用CodeNarc提供的Groovy脚本生成新规则时,the default priority is 2。检查随 CodeNarc 0.22 分发的现有规则,有 0 个优先级 1 规则,245 个优先级 2 规则和 96 个优先级 3 规则。

这些优先级的主要用途是,您可以定义一个阈值来确定代码的 pass/fail。如果你看一下 CodeNarc Ant Task 的参数,你可以设置三个相关的参数(每个优先级一个,与下面粘贴的相同)。

maxPriority1Violations The maximum number of priority 1 violations allowed before failing the build (throwing a BuildException).

其他 CodeNarc 运行程序有类似的概念,例如 Grails CodeNarc plugin,请参阅配置最大违规次数。

因此,真正由您来决定每个优先级的含义。如果它们是 "critical, must fix" 问题,您不能允许任何优先级 1 违规。如果它们是 "okay, but don't want too many",您最多可以允许 50 个优先级 2 违规,或者您可以决定让它们全部滑动。

请注意,如果您不喜欢默认优先级,您可以覆盖个别规则的优先级。