SonarSource 的产品和服务被世界各地的客户所使用。所有规模的组织都在使用来自 SonarSource 的产品和服务提高生产率, 降低风险, ***终开发更好的软件。SonarQube 在欧洲的三不同地点的开发团队每天都在使用。好处可以包括更多的产品发布稳定并增强对开发团队和合作伙伴服务组织的信任和信任(对于那些外包开发)。质量结果显示在墙上显示器!Kapsch TrafficCom (理事会) 是智能交通系统的提供商。它的系统采用信息和通信技术来支持和优化公路运输, 包括基础设施、车辆、用户和工业。它在各种交通应用领域的解决方案有助于减少道路交通造成的拥堵和环境污染, 提高交通安全和安全。理事会集团在33国家设有子公司和代表处, 并有3000多名员工。软件质量很重要, 因为 Kapsch 需要向其客户提供***jia的软件解决方案, 同时遵循行业标准, 如汽车行业的 MISRA 准则。即将失去对软件质量的关注
Kapsch TrafficCom 因快速扩张而失去了对软件质量的关注。这种扩展导致了一些新的编程语言的使用, 并雇用了许多新的开发人员。这意味着水平软件产品的可维护性今天将决定其成本责任的水平明天。理事会预见到需要更好地控制, 遵循编码准则, 并确保它开发的应用程序在发布之前达到了定义的质量目标。此外, 技术债务的趋势需要更加明显, 以帮助决策者达成关于重构与引入新特性的知情决策。由于理事会在静态代码分析中使用了几种不同的解决方案, 因此很难同时将整个代码库的这一概述放在一起。SONARQUBE 的自下而上采用
然后, 瑞典理事会办公室的***遇到了 SonarQube。这一收养***是由管理层和其他理事会的开发网站所采纳的自下而上的方法。在年内, 它将被采用在更多的地点, 并作为理事会的主要解决方案, 跟踪代码质量。SonarQube是可配置的,可以给代码一个"等级"(从a到E),并可以确定它通常在努力和所需的工作类型方面的成本改进软件。在这一收养中, 关键是 SonarQube 使用相同的度量标准来衡量每种语言。理事会使用几种不同的语言, 现在它们都可以以统一的方式呈现。可以很容易地看到当前的度量状态, 以及它们是否在正确的方向上移动。此外, 项目组合管理 (视图) 插件允许理事会从多语言应用程序中聚合质量度量, 将每个应用程序的质量统一起来, 并将应用程序进一步聚合到产品、项目和部门质量的统一演示中。更美好的是, "由于我们每夜都在分析我们的大部分产品, 所以现在每个人都可以按需获取***xin的结果 (在每个聚合级别)", 瑞典理事会的测试组长约翰 Esbj?rner 说。Kapsch TrafficCom 使用的主要功能包括:时间机器-跟踪关键代码质量度量的进度。视图-将多种语言聚合到产品/项目/部门中。差异视图-检查遗留项目中是否引入了新问题。Java API-创建自己的集成插件, 因为它已经做了宝丽来 ALM。SONARQUBE 结果显示在墙上显示器上
SonarQube 目前正被用于检查超过30应用程序和700k 代码行的代码质量, 并且这些数字预计会随着全年的采用而不断增加。它每天都被开发团队使用, 它们遍布欧洲三不同的开发站点。Esbj?rner 表示, "我们可以利用我们现有的詹金斯基础结构来触发静态分析, 从而缓解了向 SonarQube 的过渡, 因此无需额外的服务器。SonarQube方便团队成员减少应用程序的大小、代码的复杂性、维护时间和成本,使代码易于阅读和理解。让所有利益相关者通过 web 浏览器轻松地访问结果, 并显示在人们走过的墙壁监视器上, 从而提高了对代码质量的认识。这些指标已成为一种帮助, 以可视化需要做什么。早些时候, 开发人员知道代码需要重构, 但是很难得到标准的数据来向决策者展示。现在, 他们可以通过打开 web 浏览器并显示度量和代码来做到这一点。今天, 质量门是为所有语言定义的, 因此新功能并不总能战胜重构。在发布前始终满足***di质量级别要求。
SonarSource
实现和好处的典型大小
大型国际组织可以对1万多个项目进行分析, 并
分析650–700万行代码在14种语言与8000访问一天在网站上。
IDC 的一位客户正在跟踪1200项目, 其中有1.6亿行代码
通过 SonarQube 扫描, 再加上另外的300项目, 还有1.6亿行代码
被扫描。
另一位客户从二十几个项目到现在已注册的2230多个项目
用户有更多的匿名浏览仪表板。
为什么 SonarQube?
SonarQube 引用 IDC 的讲话需要一种测量和强制软件的方法
和代码质量指标。一个关键的目标是对代码质量进行量化测量, 并
分析这些指标来制定一套基准测量-主要是利用
鼓励良好做法的平台 (并劝阻坏的行为)。
在评估有竞争力的产品时, 他们寻找的是: 品质特征
分析提供 (如死代码分析、影响分析、跨平台分析);
支持的语言 (SonarSource 支持 20 +);代码评审的灵活性;和仪表板
产品和报告分析。服务组织还评估了基于
商业限制和参与限制。
SonarQube 的优点通常包括其整体易用性, 需要更少的时间来学习
并采取。与 SonarQube 的包装选项也有利于***终用户和
服务提供商-"不附加任何字符串" 的企业许可证是对具有动态分发需求和服务提供者的***终用户的帮助, 提供了能够利用的自由
SonarQube 灵活地作为订婚的一部分。
SonarQube 仍在发展其对影响分析的支持, 但同时一些客户
引用已创建解决此问题的变通方法。
使用 SonarQube 的好处
SonarQube 客户描述的功能在解决其
***问题包括以下几个方面:
?代码和质量的能见度, 可以看到热点是在应用程序中
主动包括应用程序质量 "前端" 作为开发的初始和迭代部分
过程仪表板, 用户可以选择处境和
自定义报告。
?的能力, 以不同的层次整合的指标, 在各不相同的意见-在客户
级别, 在开发人员级别和/或业务单位级别-并将它们上卷成 "一个
真理之源 ";一个单一的门户/单点, 每个人都可以去看看他们
需要知道。
?经理/董事可以自定义和使用 SonarQube 来衡量
各个组-服务提供商可以为每个客户自定义仪表板
组织, 他们正在努力解决不同种类的需求和标准。
它们还可以增强现有规则并集成结果, 因为 SonarQube 给出了
这一水平的灵活性。同时, 组织必须注意不要使用
SonarQube 作为 "棍棒" 迫使 "好行为"-成功的公司有
利用信息鼓励更好的做法, 而不是建立 "墙
羞辱 "惩罚个人不良的编码行为。这意味着使用 SonarQube 作为
"诊断指标" 而不是 "基于结果的" 指标, 可以更好的推动成功。
?总的来说, 这些能力使客户能够管理和减轻技术债务
通过一个 cost-effective 的解决方案, 可以扩展到企业级, 并广泛
分布式.SonarQube 帮助组织对代码质量进行基准测试并了解
他们的组织是如何做, 以及他们如何能够和有改进的时间通过
定性和定量的信息。
使用安装在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可以通过maven或Sonar-runner(用于非Maven项目)分析项目(以SonarQube支持的编程语言[02]编写)的两种方式,以及SonarQube的不同方面这有助于作为静态代码分析工具。
通过maven
转到包含maven配置文件(即pom.xml)的项目文件夹,并根据***终目标运行以下命令之一:
$ mvn clean安装声纳:声纳
$ mvn install sonar:sonar
$ mvn声纳:声纳
$ mvn clean sonar:sonar 的-Dsonar.host.url = http:// localhost:nnnn
(其中nnnn是SonarQube正在侦听的备用端口号)
输出
通过上述命令成功分析项目将导致以下输出到控制台或日志文件:
[INFO] ----------------------------------------------- -------------------------
[INFO] BUILD SUCCESS
[INFO]总时间:29.923秒
[INFO]完成时间:Fri Sep 13 18:07:01 BST 2013
[INFO] Final Memory:62M / 247M
[INFO] [18:07:01.557]执行org.apache.maven.plugins: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]执行职位后的类org.sonar.issuesreport.ReportJob
[INFO] [18:07:09.529]执行工作后类别org.sonar.plugins.core.issue.notification.SendIssueNotificati***Po的stJob
[INFO] [18:07:09.529]执行职位后的类org.sonar.plugins.core.batch.IndexProjectP的ostJob
[INFO] [18:07:09.580]执行工作后类org.sonar.plugins.dbcleaner.ProjectPurgeP的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]总时间:38.345秒
[INFO]完成于:Fri Sep 13 18:07:09 BST 2013
[INFO] Final Memory:28M / 255M
以下是几个链接到pom.xml文件的示例,这些文件应该有助于创建新的或修改现有配置以将maven项目与SonarQube(包括其他maven CLI交换机)集成在一起,即使用Maven [03]和SonarQube分析Github [04] 。
通过声纳赛
转到包含sonar-project.properties配置文件的项目文件夹,然后运行以下命令:
</ DIV>
<DIV> </ DIV>
<div> $ sonar-runner </ div>
<DIV>
使用SonarQube进行PL / SQL分析 - 配置
发表评论
SonarQubePLSQL2在这个关于使用SonarQube分析PL / SQL代码的新系列的第yi篇文章中,我们看到了如何组织我的分析环境:
一个文件夹C:\ SRC \与我所有的项目,
***于每个项目的子目录,
不同的其他子目录,包括一个'.. \ Source',其中包含要分析的源代码。
在我们的PL / SQL分析的情况下,这将被放在文件夹'C:\ SRC \ Demo \ PLSQL \ Source'中。
让我们看看如何用Jenkins来创建和配置SonarQube这个代码的分析。继续阅读→
Jean-Pierre FAYOLLE于2013年12月27日发布了SonarQube - PL / SQL。
使用SonarQube - 组织进行PL / SQL分析
SonarQubePLSQL1现在我更新了我的源代码分析环境,随着SonarQube或SonarQube-Runner和Jenkins的升级,时间已经到来更新了一个应用和演示的存储库。继续阅读→
此条目发布于2013年12月22日由Jean-Pierre FAYOLLE发行的SonarQube - PL / SQL。
版权所有©2024 天助网