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
分享到:
相关推荐
Java持续集成是软件开发过程中的一个关键实践,它旨在频繁地合并开发人员的代码更改,以便尽早发现并解决潜在的问题。这个过程通过自动化构建、测试和部署,确保代码的质量和项目的稳定性。持续集成(Continuous ...
标题中的“从持续集成到持续检查”涉及到软件开发过程中的两个关键实践:持续集成(Continuous Integration, CI)和持续检查(Continuous Inspection, 可能是指Continuous Testing或Continuous Inspection of Code ...
【持续集成】是一种重要的软件开发实践,源自极限编程的12个基本原则,旨在提升软件开发的效率和质量。它要求团队成员频繁地整合各自的工作,通常每天至少一次,甚至多次。每次集成都会通过自动化构建过程,包括测试...
1. **持续集成**:在开发阶段,开发者频繁地将自己的代码合并到主分支,每次合并后都会自动执行编译、单元测试和代码质量检查,确保代码的正确性和健康状况。 2. **单元测试**:单元测试是持续集成的基础,它验证...
### 持续集成与单元测试 #### 一、引言 随着软件开发行业的快速发展,对软件质量和开发效率的要求也越来越高。在软件开发过程中,如何有效地提高开发质量、确保核心模块的质量成为了一个重要的议题。本篇文章将...
CI(Continuous Integration,持续集成)是一种软件开发实践,旨在通过频繁地将开发人员的代码更改合并到共享存储库中来减少集成问题。这个过程通常伴随着自动化构建和测试,以确保新代码不会破坏现有的功能。CI的...
通过阅读《敏捷实践之持续集成》的相关资料,如“持续集成.mm”、“敏捷实践之持续集成(V1.0).ppt”以及“持续集成测试.txt”,我们可以获取更多关于如何在实际项目中实施和优化持续集成策略的深入见解和案例研究...
Jenkins 是一款强大的开源持续集成(Continuous Integration, CI)工具,它被广泛应用于软件开发过程中,以自动化构建、测试和部署任务。通过Jenkins,开发者可以实时监控代码更改,自动触发构建过程,确保项目的...
在IT行业中,持续集成(Continuous Integration,CI)是一种软件开发实践,它强调开发人员频繁地将他们的代码更改合并到共享存储库中,并通过自动化构建和测试来确保这些更改没有引入错误。SonarQube和Jenkins是两种...
通过持续集成控制代码质量 Maven+Hudson+Sonar 持续集成的基本原则很简单:尽早集成,经常集成。 持续自动构建 :使用CI,您只要按一下按钮,它会依照预先制定的时间表,或者响应某一特定事件,就开始进行一次构建...
### 持续集成与部署的关键实践:初创公司的视角 #### 一、引言 持续集成(Continuous Integration, CI)和持续部署(Continuous Deployment, CD)是软件开发领域的重要实践,尤其是在快速变化的初创公司环境中更为...
这是应用于iOS打包发布及代码检查持续集成功能介绍,里面有详细的代码指令
【持续集成与自动化测试】 持续集成(Continuous Integration, CI)是一种软件开发实践,它强调开发人员频繁地将他们的代码更改合并到主分支,通常每天至少一次。这一过程伴随着自动化构建和测试,以尽早发现和修复...
### 持续集成框架整合说明 #### 一、引言 随着软件开发流程的不断演化,持续集成(CI)已成为提高软件质量和开发效率的重要手段之一。本文将详细介绍如何利用Jenkins、Maven以及Sonar等工具搭建一套完整的持续集成...
4. **更好的代码质量**:持续集成促使团队遵循良好的编码规范,因为不符合规范的代码很难通过自动化检查。 三、风险降低 1. **减少集成风险**:通过频繁的小规模集成,降低了大规模集成时可能出现的兼容性问题。 2....
### 持续集成:软件质量改进和风险降低之道 #### 一、持续集成概述 持续集成(Continuous Integration,简称CI)是一种软件开发实践,它强调频繁地将开发人员的工作集成到一个共享的主干中,并通过自动化构建来...
### 规模化持续集成方法:流程定制与服务组件化 #### 一、规模化持续集成的概念及意义 在软件开发过程中,持续集成(CI)是一种软件工程实践,它要求开发人员频繁地将代码合并到共享的主干版本库中,每次合并后可以...
持续集成管理平台的组成 持续集成管理平台是 software development 的一系列工具的组合,旨在提高软件开发的效率和质量。下面我们将详细介绍持续集成管理平台的组成。 源码版本管理 源码版本管理是软件开发中最...