关闭SonarQube中的旧版代码违规
一旦您设置了所有组件,您现在可以使用jsawk为所有现有的违规创建排除模式:
curl -XGET'http:// localhost:9000 / api / violation?depth = -1'| ./jsawk -a'return this.join(“﹨ n”)''return this.resource.key.split(“:”)[1] +“; *; [”+ this.line +“]”' |排序| uniq的
这将显示一个可以粘贴在“关闭违规”插件的文本区域中或将其作为文件签入存储库的列表。随着下一个分析过程,您将希望看到零违规。当有人通过插入一行更改文件时,会再次显示违规行为,并且应该被修改。不幸的是,一些违规行为不是基于行的,并会产生一个行号'undefined'。目前我刚刚删除了这些手动,所以你仍然可能会看到一些违规。
结论
我提出了一种方法来将您的旧版代码重置为零违例。使用SonarQube 4.0,“切换违规关闭”插件的功能将在内核中使用,因此将更*使用。我仍然在寻找保持排除模式xin的jia方式。一旦有人必须修复现有文件的违规行为,则应删除该模式。
更新09.01.2014
从SonarQube 4开始,这种方法不再工作了。 SwitchOffViolati插件的一些功能已被移动到,但是排除违反行为是不可能的,中国sonarqube规则,也不会实现。开发商建议仅查看项目的趋势,而不是总体违规数量。这可以很好地使用差分。
SonarSource简介
可靠性问题
这通常被称为潜在的 bug 或代码,sonarqube规则, 在运行时将不具有预期的行为。此类问题将所有与操作风险或运行时意外行为有关的内容分组。它通常采用可能导致业务中断的关键编程错误的形式。其中的一些问题将存在于简单的不符合jia做法的情况, 但大多数将通过对代码的深入分析和代码的符号执行来检测,代理商sonarqube规则, 以了解程序中任何给的变量的状态。安全问题
这通常被称为程序中的漏洞或缺陷, 可能导致应用程序的使用方式与设计不同。这类问题将所有与程序有缺陷的事情进行分组, 这些漏洞可以被利用来使它的行为与它的设计不同。安全漏洞 (如 SQL 注入或跨站点脚本) 可能是由于编码和体系结构实践不佳造成的。这些问题在 CWE 和证书所维护的列表中有很好的记录
SonarSource
代码质量是一个不断增长的市场, 它是分析师对其大规模采用和大量**的雷达。
介绍麦凯布的圈复杂度长期以来一直是事实上的标准测量方法的控制流的复杂性。它的目的是 '确定软件模块将很难测试或维护 '[1], 但当它准确地计算xiao的测试用例需要完全覆盖的方法, 它不是一个令人满意的测量理解。这是因为具有相等圈复杂度的方法不一定存在同样的困难, 维护, 导致一种感觉,测量 '啼狼' 由 over-valuing 一些结构, 而 under-valuing 其他构造.同时, 圈复杂度不再是全mian的。制定的Fortran 环境在 1976年, 它不包括现代语言结构, 如尝试/捕zhuo,和 lambda。后, 因为每个方法都有一个xiao的圈复杂度得分, 它是不可能知道任何具有高聚合圈复杂度的给定类是否一个大的、易于维护的域类, 或一个具有复杂控制流的小类。在类级别之外, 人们普遍承认, 圈复杂度的分数应用程序与它们的代码总计行相关联。换言之,中国sonarqube规则, 圈复杂度是在方法级别上很少使用。作为对这些问题的一种补救, 认知复杂性已经被制定来解决现代语言结构, 并产生的价值是有意义的类和应用程序级别。更重要的是, 它背离了基于数学模型, 使其能够产生控制流的评估, 对应于程序员的直觉的精神, 或认知的努力, 需要了解这些流动.