SonarSource简介
在它们存在之前修复代码质量问题!IDE SonarLint即时视图
打开文件时, 标记会自动出现在质量问题上。SonarLint 突出显示了打开文件上的标记的代码问题。它还为 IDE 中的选定组件提供问题汇总表, 包括问题的创建时间。即时视图关于飞检飞检测
在键入代码时出现问题。SonarLint 提供了在代码中查看问题的能力, 如文本的拼写检查器。这是通过巧妙地指出问题而不分散开发人员的注意力来完成的, 这样他就可以专注于代码, 但仍然会收到问题的通知。智能教育
错误描述与问题检测一起出现。一旦 SonarLint 检测到一个问题, 它还会显示相关的文档, 以帮助开发人员了解问题以及为什么它是一个问题。连续检查是一个整体的、完全实现的过程,旨在使内部代码质量成为软件开发生命周期的组成部分。它提供了一个兼容的和不兼容的代码示例, 并演示如何解决示例问题。简单, 强大和有趣的使用: 一个很好的方式让***学习。
SonarSource 的产品和服务被世界各地的客户所使用。所有规模的组织都在使用来自 SonarSource 的产品和服务提高生产率, 降低风险, ***终开发更好的软件。SONARSOURCE 的产品和服务被世界各地的客户所使用。
思科系统 (NASDAQ: cisco) 是***领xian的网络技术。思科拥有73460名员工和 Q2 FY13 121亿美元的收入, 在各种技术领域, 包括安全、网络会议、路由: 边缘/***/接入、语音等方面都是市场的***。行业统计显示,平均而言,软件产品的生命周期成本的80%用于维护,根据内部质量,维护成本有很高的变异性。思科 IT 代表公司的工程部门, 负责提高开发人员的生产率, 并在持续交付、构建管理、代码审查和部署方面实施***jia做法。思科的目标是设计、实施和宣传***的软件质量和维护工具。软件质量面临的关键挑战
今天, 思科将成为世界上 1 it 组织的轨道, 但有一段时间, 它无法管理软件质量可能是一个绊脚石。根据思科 it 工程师 Dhairya Sanghvi 的数据, 使它进入和通过 QA 的代码的质量是一个问题。过去有许多与代码相关的问题, 随着时间的推移而不断升级, 花费了我们很多钱。和60%按时交付和预算通常需要事后调整,以确保公司的***后期限已经达到(例如,需要在项目中投入更多的员工,或者?2015IDC#IDCTS08W2项目范围减少)。部分问题是缺乏标准。"我们曾经有开发团队以一种杂乱无章的方式进行代码审查和非功能分析," Sanghvi 说。"没有信息存储或对缺陷数量有清晰的了解", 也无法看到质量随时间变化的方式。此外, "代码评审所采用的系统和流程没有标准化, 因为没有用于执行 (审查) 的通用工具或规则集"。开发团队正在使用各种工具进行静态分析和单元测试, 但他说, "思科需要将其***转移到一个具有更成熟报告能力的工具上, 开发人员和管理层都可以对其进行解释。SONARQUBE 是一致的选择
Sanghvi 说, 在寻找能够满足思科需求的工具的同时, 研究团队也在尝试将敏捷实践融入到思科 it 开发环境中。他说, 这支球队是以 SonarQube 的特点出售的, 但整合是关键的。"SonarQube 是一个代码分析工具, 与詹金斯集成好, 我们去了, ' a-哈, SonarQube 它是这样的!SonarQube 是一致的选择。Sanghvi 说, SonarQube 有 "很多伟大的特点", 但这些突出:可自定义的规则集-"SonarQube 中的可定制的质量配置文件是一个非常有用的灵活性, 考虑到我们的平台上有各种不同的粉笔和奶酪的团队," Sanghvi 说。可以同时分析多个文件,并在SonarLint报告视图中检查结果问题提示:当使用分析函数时,可能找不到***近在编辑器中打开的文件的抄写,因为SonarLint使用的是只在其中一个IDz编辑程序中打开文件或其依赖项时才会填充的本地文件缓存。"此外, 将 xml 规则 (从一个 SonarQube 实例转移到另一个) 和这些配置文件的继承能力都很容易使其成为***的产品。项目组合管理-思科公司正在使用投资组合管理插件, 在整个企业中提供管理友好、个性化的质量指标。这给整个组织提供了很大的激励, 可以定期检查他们的进度, 跟踪改进并采取行动来修复质量缺陷。时间机器– "趋势分析报告是 SonarQube 中***da量的使用能力之一, 帮助我们说服许多项目团队采用该工具" Sanghvi 说。"能够看到我们的项目在很长一段时间内的质量改善是***关键的项目之一, 在您的阿森纳。当与项目组合管理插件结合使用时, 此功能为组织的性能提供了一个完整的窗口。在代码审查和功能集成中节省了大量的资源时间
根据 Sanghvi 的数据, 思科公司采用 SonarQube 的方法, 对这家企业来说是一个巨大的胜利。"SonarQube 已经触发了三倍的业务影响, 我们已经看到了在每一个项目团队, 我们已经登上-交付*** (时间到能力减少), 工程*** (质量改进) 和业务价值 (成本节约)。通过将代码分析转移到开发阶段并每天运行它, Cisco it 大大提高了代码质量, 并因此减少了紧急 bug 修复, 这 "为组织节省了大量成本", Sanghvi 说。一个单一的门户,如提供的SonarSource与SonarQube-与能力自动化数据收集-不仅是质量本身,而是关于启用更***测试。"在 PLC 的早期阶段遇到的缺陷比以后被发现的要便宜得多。下一次大胜利是在代码审查领域。现在, 每个团队都在同一个地方进行代码评审, 使用相同的工具和度量, SonarQube 提供了对关键缺陷度量的清晰和基于时间的可见性。由于 SonarQube 的日常代码分析, 在代码审查和功能集成中节省了大量的资源时间。此外, "SonarQube, 与其相关的质量概况和他们的客户
连续检查是一个整体的、完全实现的过程, 旨在使内部代码质量成为软件开发生命周期的一个组成部分。***白皮书本文详细介绍了代码质量管理中的关键问题。?经理/董事可以自定义和使用SonarQube来衡量各个组-服务提供商可以为每个客户自定义仪表板组织,他们正在努力解决不同种类的需求和标准。然后介绍了连续检查范式, 并说明了它如何解决这些挑战, 支持数以千计的企业提高其软件质量。通过在整个生命周期中提高所有利益干系人的***度, 连续检查使企业能够接受代码质量 whole-heartedly。在 SonarSource 的支持下, 持续的检验范式是非常有效的, 并已被证明在现实世界中的工作, 从小公司到财富100强的企业, 在所有行业。
购买 SonarQube 作为测试自动化的质量门由琳达陈在 2017年4月13日 |4分钟阅读1SonarQube (原名声纳) 被广泛用于各种项目的代码质量管理工具, 提供跟踪和提高源代码质量的功能。持续:通过保持简洁的代码体系结构和增加的单元测试,SonarQube平台通过减少代码中的复杂性、重复性和潜在bug,大大提高了应用程序的使用寿命。此类功能还可用于测试自动化, 以量化测试脚本的质量, 因为自动检测脚本的本质是代码。
测试自动化的 SonarQube 特性
为不同的利益相关者提供定制的度量标准每个项目都有不同的利益干系人, 如客户、项目经理、架构师、开发人员和测试人员, 他们拥有完成项目的各种技术或知识。因此, 他们对项目质量的关注是多种多样的。持续的检查促进了团队协作和生产力的增强,并产生了强大团队对代码质量的归属感,因为质量过程与代码本身一样,是由团队。不同群体的利益干系人的质量度量标准是不同的, 这为查看 SonarQube 的价值提供了一个良好的环境, 因为该工具为不同的用户提供了定制的度量标准。 下表显示了针对不同项目角色的 SonarQube 质量度量的一个很好的示例。
支持项目的多种编程语言尽管用 java 编写, SonarQube 可以在大约20多个不同的编程语言 (包括 java、Python、c/c++) 中分析代码。将所有这些信息一起放在所有项目中将是一个新的治理仪表板(一个商业插件)。可以自动检测到不同的编程语言, 并调用相应的语言分析器。因此, 即使目标测试脚本由多种不同的编程语言组成, 声纳仍然能够跟踪、分析和创建有关代码质量的报告。
使用行业标准 (代码分析器) 提供测试规则在更大的图片中, SonarQube 提供了行业规则模板, 用户可以根据需要自定义质量规则。对于自动测试, 可以应用一堆规则。下面提供了示例规则:
除了检查现有项目的源代码, 为了进行自动测试, 声纳可能需要根据某些要求停用或更新一些规则。
示例规则可以删除, 如下所示:
示例规则可以更新如下:
除了上面给出的特性, SonarQube 还具有诸如 DevOps 集成、聚合仪表板、时间机器等功能, 所有这些都可以帮助测试自动化项目变得更具可追溯性和可见性。
如何通过与数据库 mysql 的集成来设置 SonarQube
设置 SonarQube 是很简单的。但是, 不建议将嵌入在 SonarQube 中的默认数据库 H2 用于生产用途, 因为它无法进行缩放。由于开发人员提供了一个粒度代码级别的信息,SonarQube使这些构建软件查找并深化到存在代码问题的位置。 为了更好的维护和可伸缩性, 我们建议用 mysql 这样的另一个数据库替换 H2。下面是在 windows 平台中为 SonarQube 设置 mysql 的一个示例。
前提
在您的计算机上安装 Java (Oracle JRE 8 开始或 OpenJDK 8 起)。步骤:
1.Install. 用 mysql 建立数据库
a. 从 并安装, 然后启动 mysql
b. 为声纳创建数据库, 包括创建用于访问数据库的管理员帐户。例如, 通过在 sql 下运行, 使用用户帐户声纳和密码声纳创建名为声纳的数据库:
版权所有©2024 天助网