SonarSource
使用安装在Mac OS X Mountain Lion 10.8.4上的SonarQube?(以前称为Sonar?)
发表在未分类的neomatrix369
介绍(续)
继续从之前在Mac OS X Mountain Lion 10.8.4 [01]上安装SonarQube?(以前称为Sonar?)的博客文章,我们将介绍如何在不同情况下使用SonarQube。
这个帖子可能会比前一个更加冗长,即使用命令输出和屏幕截图,代理商sonarqube安装配置,说明SonarQube如何响应各种用户操作。
运行SonarQube分析项目
我们将介绍SonarQube可以通过maven或Sonar-runner(用于非Maven项目)分析项目(以SonarQube支持的编程语言[02]编写)的两种方式,以及SonarQube的不同方面这有助于作为静态代码分析工具。
通过maven
转到包含maven配置文件(即pom.xml)的项目文件夹,并根据终目标运行以下命令之一:
$ mvn clean安装声纳:声纳
$ mvn install sonar:sonar
$ mvn声纳:声纳
$ mvn clean sonar:sonar 的-.url = http:// localhost:nnnn
(其中nnnn是SonarQube正在侦听的备用端口号)
输出
通过上述命令成功分析项目将导致以下输出到控制台或日志文件:
[INFO] ----------------------------------------------- -------------------------
[INFO] BUILD SUCCESS
[INFO] ----------------------------------------------- -------------------------
[INFO]总时间:29.923秒
[INFO]完成时间:Fri Sep 13 18:07:01 BST 2013
[INFO] Final Memory:62M / 247M
[INFO] ----------------------------------------------- -------------------------
[INFO] [18:07:01.557]执行org.apache.ugins:maven-surefire-plugin:2.10:test done:20372 ms
[INFO] [18:07:01.557]执行maven插件maven-surefire-plugin done:20373 ms
。
。
。
[INFO] [18:07:09.526] ANALYSIS SUCCESSFUL,您可以浏览http:// localhost:9000 / dashboard / index / com.webapplication:sub-webapp
[INFO] [18:07:09.528]执行职位后的类portJob
[INFO] [18:07:09.529]执行工作后类别re.ndIssueNotificatiPo的stJob
[INFO] [18:07:09.529]执行职位后的类re.dexProjectP的ostJob
[INFO] [18:07:09.580]执行工作后类ugins.jectPurgeP的ostJob
[INFO] [18:07:09.590] - >在2013-08-16和2013-09-12之间每天保留一张快照
[信息] [18:07:09.591] - >在2012-09-14和2013-08-16之间每周保留一张快照
[信息] [18:07:09.591] [信息] [18:07:09.614] 2008-09-19和2012-09-14之间每月保留一个快照
[INFO] [18:07:09.627] - >删除之前的数据:2008-09-19
[INFO] [18:07:09.629] - >清理webapp [id = 1]
[信息] [18:07:09.631] [信息] ------------------------------------- -----------------------------------
[INFO] BUILD SUCCESS
[INFO] ----------------------------------------------- -------------------------
[INFO]总时间:38.345秒
[INFO]完成于:Fri Sep 13 18:07:09 BST 2013
[INFO] Final Memory:28M / 255M
[INFO] ----------------------------------------------- -------------------------
以下是几个链接到pom.xml文件的示例,这些文件应该有助于创建新的或修改现有配置以将maven项目与SonarQube(包括其他maven CLI交换机)集成在一起,即使用Maven [03]和SonarQube分析Github [04] 。
通过声纳赛
转到包含sonar-perties配置文件的项目文件夹,然后运行以下命令:
</ DIV>
<DIV> </ DIV>
<div> $ sonar-runner </ div>
<DIV> </ DIV>
<DIV>
输出
SonarSource连续检查的10原则:
开发过程中的所有利益干系人 (不仅仅是开发人员或经理) 必须具有现成的访问权限到有关软件质量的有意义的数据。
管理软件质量必须是每个人的关注从开始的发展, 但是开发团队的终ji责任。
软件质量必须是开发过程的一部分, 这意味着满足质量标准是一个的硬要求能够声明开发完成。
软件质量要求必须是客观的, 不需要主观的通过/失败的决定。软件质量要求必须尽可能多地与所有软件产品共同,西南sonarqube, 无论他们的细节。
软件质量数据必须是xin的, 即对代码的近版本进行测量。
软件产品必须不断检查, 以便在容易发现错误时迅速正确.开发人员必须能够发现新的质量缺陷, 一旦他们被引入, 即在IDE 编写代码时,sonarqube安装配置, 类似于拼写检查程序突出拼写错误的方式。
无论是通过推还是拉, 在注入新的质量缺陷时, 都必须提醒利益干系人, 无论这是通过发送电子邮件, 打破了构建或其他方法。
必须跟踪新问题的注入,使团队能够快速、明智地决定质量。
软件质量数据必须同时提供绝dui (在所有代码) 和差异 (新的代码)值, 以便开发团队可以完全控制问题的传入流程。
所有新问题和现有关键问题都必须为解决方案指ding明确的路径和时间线。
持续的检验范式是非常有效的, 并已被证明在现实世界中工作从离岸软件工厂到财富100强企业不等。这些公司成功地使用了连续检测模型来管理项目的内部软件质量所有大小。
一个财富100强的公司与超过2万的开发商使用它管理超过6亿行代码, 在每天分析超过5000应用程序的环境中。
在所有情况下, 连续检查帮助这些公司大大提高了软件质量和稳定, 通常节省数百万美元, 否则将花费在根本原因分析和危机管理。
SonarSource
如果您想知道项目使用的内部或外部库,则可能需要查看项目的内容,包括pom.xml文件。如果您使用SonarQube,则不再是这种情况,因为库是一种组件,它会招募您的应用程序所依赖的组件,并且比手动搜索。
(以上是示例应用程序的截图)
也可以在任何仪表板上添加任何Widget(Widget是组成仪表板的组件),如下所示。
(以上是示例应用程序的截图)
问题向下钻
只是被告知某事是错误的,这里的分数是多少错误或不正确的东西,没有帮助。一个更有建设性的反馈是,这里有什么问题,这是你可以做些什么来解决它。
问题钻取是一个这样的仪表板,中国sonarqube 扫描报告,我们可以找到这样的信息或足以知道什么是错误,以及如何去修复它(有时)。它还存档较旧的和封闭的问题,并通过给出各种严重程度来表明问题是多么糟糕,即阻止信息。
(以上是上的示例应用程序的截图)
任何Dashboard页面右上角的“管理信息中心”选项(如下)用于创建可以放置小部件的新的信息中心页面。
同样,每个“仪表板”页面上的“配置”窗口小部件链接允许在“仪表板”页面的任何位置添加,删除或更改窗口小部件的位置。
(以上是Apache Comm Collection的截图)
标签或词云是一种非常受欢迎的概念,被大量用作可视化形式来传达指标 - 如上所示,这是Apache Comm Collection库的一个例证。
商业组件 - SQALE
SQALE是一个专有组件,社区版本不可用,尽管SonarQube的Nemo项目[07]提供了演示版本。 SQALE是一项技术债wu评估工具,更多细节可以在[08]找到。
西南sonarqube-华克斯由苏州华克斯信息科技有限公司提供。“Loadrunner,Fortify,源代码审计,源代码扫描”选择苏州华克斯信息科技有限公司,公司位于:苏州工业园区新平街388号,多年来,华克斯坚持为客户提供好的服务,联系人:华克斯。欢迎广大新老客户来电,来函,亲临指导,洽谈业务。华克斯期待成为您的长期合作伙伴!