自动化代码质量管理..docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
自动化代码质量管理.

自动化代码质量管理Sonar+cppCheck+pcLintSonar简介Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量。通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测。sonarQube能带来什么?Developers Seven Deadly Sins糟糕的复杂度分布文件、类、方法等,如果复杂度过高将难以改变,这会使得开发人员难以理解它们,且如果没有自动化的单元测试,对于程序中的任何组件的改变都将可能导致需要全面的回归测试。重复显然程序中包含大量复制粘贴的代码是质量低下的,sonar可以展示源码中重复严重的地方。缺乏单元测试sonar可以很方便地统计并展示单元测试覆盖率。没有代码标准sonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具规范代码编写没有足够的或者过多的注释没有注释将使代码可读性变差,特别是当不可避免地出现人员变动时,程序的可读性将大幅下降而过多的注释又会使得开发人员将精力过多地花费在阅读注释上,亦违背初衷潜在的bugsonar可以通过PMD,CheckStyle,Findbugs等等代码规则检测工具检测出潜在的bug糟糕的设计(原文Spaghetti Design,意大利面式设计)通过sonar可以找出循环,展示包与包、类与类之间的相互依赖关系可以检测自定义的架构规则通过sonar可以管理第三方的jar包可以利用LCOM4检测单个任务规则的应用情况检测耦合通过sonar可以有效检测以上在程序开发过程中的七大问题。SonarQube安装社区开源软件的共享、免费特性不可避免的决定了其发布版本存在的、软件契合度上的不友好性。若幻想如windows软件套装一样的傻瓜式安装,将是不切实际的。笔者经过实践,总结了较新的版本安装过程。笔者在windows上搭建Sonar代码质量管理平台,所用的各开源软件版本号、及说明如下:Java开发环境 jdk1.7.0_75Sonarqube/Sonar-Runner/cxx等开源软件都是java语言开发的,jdk或jre是运行这些程序的基础。sonarqube-5.1.2Sonar平台的web接口;管理员或者代码作者等候后可以基于项目查看代码的审查结果。每次运行时,都是主动连接数据库,并监听某个端口(默认是::9000)的http请求。sonar-runner-2.4sonar-examples-master分析代码的重复率、复杂度;从sonarqube获取可用的plugin插件,来解析特定目录下由第三方工具(pclint/cppcheck/vagrand)生成的代码审查、覆盖率统计等xml格式的报告,并存储到数据库,以供sonarqube使用web展示。第三方工具可以从各维度对代码质量进行审查。sonar-examples-master.zip是用来验证sonar能够正确运行的、包含20余种语言的示例代码。mysql-installer-community-.msi用以支撑sonarqube、sonar-runner运行的大型数据库;Sonarqube自带的h2数据库,效率低、管理的数据表很少,仅能够用于sonar功能演示的目的。PC-LINT_V9.0第三方工具,负责对c/c++代码进行静态检查,有商用和社区两个版本,功能非常强大。Cppcheck-1.71第三方工具,负责对c/c++代码进行静态检查,开源代码,功能比pc-lint弱一些但够用。cxx-plugin-0.9.4.tarPlugin插件,负责解析第三方工具(pclint/cppcheck/vagrand等)针对c/c++语言生成的xml质量报告,并生成可被sonar识别的数据。在了解了上述各个工具软件的用途后,搭建sonar源代码质量管理平台就顺手很多,并且能够迅速定位搭建过程中出现的臭虫。当你更换上述软件为其他版本号时,可能因为兼容性问题而导致安装失败,请额外注意。笔者在安装过程中就遇到了此类问题,抓狂的很久,因而在此分享给大家。安装JDK虚拟机环境请下载JDK1.7或1.8,安装过程是一路的nextnext点下去,请注意JDK的安装目录。假定我们已经将JDK安装在了C:\Program Files\Java\jdk1.7.0_75,紧接着对系统环境变量进行配置:右键”我的电脑”“属性”“高级”选项卡“环境变量”栏:弹出如下窗口在“系统变量(S)”框内找到“Path”变量并选中后,点击下方的“编辑”弹出如下窗口:在“变量值”框内增加java的安装目录:“C:\Program Files\Java\jdk1.7.0_75\bin”,并

文档评论(0)

wuyuetian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档