`

持续集成 vs 持续检查

阅读更多

Keywords: 持续集成 持续检查 Contineous Integration Contineous Inspection Sonar Software Quality

 

蓝锋博客:http://bluesfeng.iteye.com


本文系翻译文章,英文原文参见:

http://www.sonarsource.org/continuous-inspection-practice-emerges-with-sonar/

 

自从Kent Beck和Martin Fowler提出持续集成的概念来已经将近十年了。在当时很难想像这个概念会对开发人员的日常工作产生如此巨大的影响,也没有想到这个概念会被软件界如此广泛地接受。在今天我们难以想象如果没有持续集成,软件开发会是什么样。


持续集成的终极目标就是想要在软件开发的任何阶段,无论是Milestone,RC,还是GA,都能够以最低的风险发布软件的不同版本。让我们来总结一下持续集成能够做到什么:

  • 任何人在任何地点,任何时间可以构建整个项目。
  • 在持续集成构建过程中,每一个单元测试都必须被执行。
  • 在持续集成构建过程中,每一个单元测试都必须通过。
  • 持续集成构建的结果是可以发布的软件包。
  • 当以上任何一点不能满足时,整个团队的主要任务就是去解决这个问题。

 

这确实是一个非常好的起点但对整个软件的质量来说确是不够的。那么还有哪些对源代码质量的要求呢?

  •  任何新的代码必须和相应的单元测试代码一同进入系统。
  •  新方法的复杂度不能超过定义的界限。
  •  不允许包之间的循环性依赖关系。
  •  不予许重复性代码。
  •  不允许和已经定义的编码规范冲突。
  •  不允许调用已经声明为过时的方法。
  • 。。。

总而言之,以上这些需求的目的就是要控制整个“技术负债 ”并且意识到它的存在。这就是“持续检查”。 这个概念在5年前就出现了(IBM文章 )。只不过近期又被进一步描述和定义了。但就向十年前的“持续集成”概念一样,持续检查仍然是一个很新的概念。


Sonar就是支持“持续检查”的最优秀的架构之一。关于Sonar的使用,请参考我相关的博客文章。

 

Keywords: 持续集成 持续检查 Contineous Integration Contineous Inspection Sonar Software Quality

 

蓝锋博客:http://bluesfeng.iteye.com

2
0
分享到:
评论

相关推荐

    使用Hudson持续集成.pptx

    通过持续集成控制代码质量 Maven+Hudson+Sonar 持续集成的基本原则很简单:尽早集成,经常集成。 持续自动构建 :使用CI,您只要按一下按钮,它会依照预先制定的时间表,或者响应某一特定事件,就开始进行一次构建...

    持续集成PPT介绍

    这是应用于iOS打包发布及代码检查持续集成功能介绍,里面有详细的代码指令

    Sonarqube+jenkins持续集成

    整合Sonarqube+jenkins 搭建开源持续集成环境。Sonarqube一款很实用的代码检查工具,包括findbugs、chechstyle、编码规范等等。还可以集合eclipse进行代码检查

    从持续集成 到 持续检查

    NULL 博文链接:https://hackxin.iteye.com/blog/769341

    sonar持续集成

    java持续集成 findbugs checkstyle,pmd等提高代码质量,进行代码静态检查。

    Jenkins docker Kubernetes持续集成(CI)持续部署(CD) (1).png

    使用k8s内置健康检查机制,更快速的发现故障容器并自动恢复,解决以往项目多点部署监控覆盖不全面(自动化)问题; 使用Kubernetes和容器来替代在物理机中运行的KVM 虚机,提高资源利用率,解决虚机创建、迁移、扩...

    持续集成和代码检查系统badwolf.zip

    badwolf 是一个基于 BitBucket 和 Docker 的持续集成和代码检查系统。特点:在 Docker 容器运行测试支持多种测试脚本支持 success/failure 后的多种脚本支持 E-mail/Slack 通知支持代码 linting 标签:...

    使用Jenkins实现移动APP持续集成构建检查

    通过《使用Jenkins搭建iOS/Android持续集成打包平台》和《关于持续集成打包平台的Jenkins配置和构建脚本实现细节》两篇文章,我们已经在原理概念和实践操作两个层面掌握了如何搭建一个完整的持续集成打包平台。...

    持续集成与持续部署-SonarQube使用教程

    SonarQube可以与持续集成工具(如Jenkins、Azure DevOps等)集成,实现在代码提交时自动进行代码质量检查,并及时反馈结果。总之SonarQube帮助开发团队更好地理解和管理其代码质量,提高代码的可维护性和可靠性。

    基于Jenkins+SonarQube+Nosetests+Coverage的Python项目持续集成.jpg

    本文从一个规范的Python项目目录结构开始,介绍了一个Python项目应该遵序的一些编码规范,以及与持续集成相关的工具使用。由于网上众多Python项目是使用TravisCI进行持续集成,跟我们目前使用Jenkins+SonarQube方案...

    godot-ci-freebsd:Godot对FreeBSD平台的持续集成检查

    godot-ci-freebsd:Godot对FreeBSD平台的持续集成检查

    持续集成的网站监控工具Kickoff.zip

    Kickoff一个持续的网站监控工具。旨在在启动前或部署后自动对需求列表的进程进行检查。Kickoff 可集成在标准的交付过程中。安装php composer.phar require frickelbruder/kickoff示例编辑示例目录中的文件,并在...

    持续集成之代码质量管理-Sonar[三]

    与持续集成工具(例如Hudson/Jenkins等)不同,Sonar并不是简单地把不同的代码检查工具结果(例如FindBugs,PMD等)直接显示在Web页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量...

    Jenkins持续集成配置

    表示每分钟检查一次。如果你觉得太频繁,可以改成“每3分钟检查一次”: */3 * * * * 在“Build”中,默认的Root POM是pom.xml。如果pom.xml不在根目录下,就填入子目录,例如:wxapi/pom.xml。 在Goals and options...

    基于Hudson的持续集成指南

    码检查、自动运行单元测试并生成用户界面友好的报告。最后,如果在这过程中有任何异常, CI服务会及时通过邮件通知你。 基于上面的行为,你可以每天了解所开发软件系统的状态,并更快的构建出稳定的软 件系统。

    versioneye是VersionEye开源的帮助更新项目依赖项的同名持续集成工具

    versioneye是VersionEye开源的帮助更新项目依赖项的同名持续集成工具。该工具提出了“持续更新(continuous updating)”的概念,它可以提供许多软件库的更新通知、许可检查和安全漏洞信息。

    使用Subversion、Hudson和Eclipse构建持续集成系统

    持续集成系统是指持续地编译、测试、检查和部署源代码的系统。持续集成是一种软件开发实践,团队开发成员经常集成它们的工作,通常每个成员每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译、发布、...

Global site tag (gtag.js) - Google Analytics