SonarSource简介
我们建立了一个 "商品"解决方案来管理代码质量。能见度不足的水平缺陷的原因及其影响为许多创造了一种文化他们所创造的缺陷的责任。要做到这一点,提供hao的产品是不够的。产品也必须与整个生态系统在开发过程中发挥良好的作用, 否则它们将根本不会被使用(至少在我们所期望的规模上)。正是基于这一点, 我们建立了 SonarQube 和 SonarLint。与生成系统
SonarQube 与标准构建系统紧密集成,提供零配置方法。在这两种情况下,传统方法使人们认识到,构建高质量的软件过于复杂和昂贵。通过与liu行的构建系统 (如Maven、MSBuild、Gradle 和 ANT) 集成, 我们提供了一种快速的扫描项目的方法,很少或根本没有配置。但这并不是唯yi的好处: 这种集成也意味着这种分析 "配置" 将始终是xin的, 因为它是用来构建项目的,在长期运行过程中保持平稳。生成系统ci 引擎与CI 引擎
SonarQube 集成了liu行的连续集成引擎, 如詹金斯和TFS。在某些情况下,引入技术债wu是可以的,但团队需要了解他们所创建的问题的权衡和存在的程度。SonarQube与构建系统的集成加上简单的命令分析线机制, 意味着 SonarQube 已经很容易地与 CI 引擎集成。我们已经更地提供了额外的集成与 CI 引擎, 如詹金斯和 TFS 通过启用一键式体验集成 SonarQube扫描到构建。与ide
开发人员在他们喜欢的 IDE 中获得代码质量的反馈。SonarLint 为开发人员提供了在 IDE 中直接对代码质量的real-time 反馈, 突出显示了开发人员类型的问题, 以便将重点放在代码上。ide公司系统与企业系统
作为企业产品, SonarQube 可以很容易地与现有系统集成,例如授权和身份验证。一个单一的门户,如提供的SonarSource与SonarQube-与能力自动化数据收集-不仅是质量本身,而是关于启用更测试。SonarQube带有内置功能, 可与的安全系统 (如 Active Directory、LDAP、Oauth 等)集成。身份验证以及授权可以委派给这些系统。它还可以集成到大多数其他系统, 这得益于它强大的 API。与连续部署
SonarQube 提供了一个简单的工具,中国sonarqube修改检测规则,以集成到管道。检测和警报:SonarQube在很短的时间内降低了软件开发的风险。SonarQube 提供了在连续交付过程的任何步骤中,将代码质量验证 (称为质量门) 挂钩的能力。这使您能够在代码是否已通过您的预定义的代码质量标准集的基础上进行升级,从而自动化了升级审批过程。
SonarQube中的旧版代码
我不相信将数字放在源代码质量上,SonarQube(以前称为Sonar)在开发过程中可能是一个非常有用的工具。软件质量要求必须尽可能多地与所有软件产品共同,无论他们的细节。它对您的团队执行一致的风格,已经发现了几个可能的错误,并且是一个很好的工具:您可以浏览违规行为,看看为什么某个表达式或代码块可能是一个问题。
为了确保您的代码库保持一致状态,您还可以直接执行代码检入的任何违规行为。其中一个问题是很多项目不是绿色项目你有很多现有的代码。如果您的违规号码已经很高,很难判断是否引入了新的违规行为。
在这篇文章中,我将向您展示如何从现有代码的零违反行为开始,而不用触摸来源,JensSchauder在他的伟大演讲中使用LegacyTeams的灵感来启发它。或者,您可以右键单击某个问题,选择要带到SonarLint规则说明视图的规则说明,以及具有兼容和不兼容代码示例的规则的详细说明。我们将根据文件中的行忽略所有违规行为,sonarqube,如果有人触及该违规行为将显示的文件,开发人员将负责修复旧版违规行为。
关闭违规插件
我们正在使用SonarQube的关闭违规插件。可以为问题配置不同的排除模式。您可以为代码块定义正则表达式,这些代码块应该被忽略,或者在所有文件或行基础上停用违规。
对于现有代码,您想忽略某些文件和行的所有违规。这可以通过在文本区域中插入这样的方式来完成排除模式:
de.fhopf.a的kka.actor.IndexingActor;PMD:SignatureDeclareThrowsException; [23]
这将排除在IndexingActor类的第23行中抛出原始异常的违规。分析代码时,这种违规将被忽略。
通过API检索违规
除了漂亮的仪表板之外,SonarQube还提供了一个可用于检索项目违规的API。从绑定的SonarLint子项目中打开COBOL或PLI文件会触发一项分析提示:如果编辑器中没有出现问题注释,SonarLint可能无法成功解析该文件。如果您不希望查找代码库中的所有现有违规行为,并手动插入,您可以使用它自动生成排除模式。所有这些违规都可以在/api /违规找到,例如HTTP://本地主机:9000 / API /违例。
我确定还有其他方法可以做,我使用jsawk来解析JSON响应(在Ubuntu上,你必须安装Spidermonkey而不是默认的js解释器。你必须自己编译,我必须使用一个特定的版本。叹了口气)。
SonarSource
如果您想知道项目使用的内部或外部库,则可能需要查看项目的内容,包括pom.xml文件。如果您使用SonarQube,则不再是这种情况,因为库是一种组件,它会招募您的应用程序所依赖的组件,并且比手动搜索。
(以上是示例应用程序的截图)
也可以在任何仪表板上添加任何Widget(Widget是组成仪表板的组件),如下所示。
(以上是示例应用程序的截图)
问题向下钻
只是被告知某事是错误的,这里的分数是多少错误或不正确的东西,中国sonarqube安全审计,没有帮助。一个更有建设性的反馈是,中国sonarqube开源代码质量管理软件,这里有什么问题,这是你可以做些什么来解决它。
问题钻取是一个这样的仪表板,我们可以找到这样的信息或足以知道什么是错误,以及如何去修复它(有时)。它还存档较旧的和封闭的问题,并通过给出各种严重程度来表明问题是多么糟糕,即阻止信息。
(以上是nemo.sonarsource.org上的示例应用程序的截图)
任何Dashboard页面右上角的“管理信息中心”选项(如下)用于创建可以放置小部件的新的信息中心页面。
同样,每个“仪表板”页面上的“配置”窗口小部件链接允许在“仪表板”页面的任何位置添加,删除或更改窗口小部件的位置。
(以上是Apache Comm Collection的截图)
标签或词云是一种非常受欢迎的概念,被大量用作可视化形式来传达指标 - 如上所示,这是Apache CommCollection库的一个例证。
商业组件 - SQALE
SQALE是一个专有组件,社区版本不可用,SonarQube的Nemo项目[07]提供了演示版本。SQALE是一项技术债wu评估工具,更多细节可以在[08]找到。
sonarqube-苏州华克斯由苏州华克斯信息科技有限公司提供。苏州华克斯信息科技有限公司实力不俗,信誉可靠,在江苏 苏州的行业软件等行业积累了大批忠诚的客户。华克斯带着精益求精的工作态度和不断的完善创新理念和您携手步入**,共创美好未来!同样,模型的命令和控制特性阻止开发团队拥有过程,因为它没有参与审查。