目录

一、什么是持续集成

二、持续集成的优势

三、持续集成面板

四、每日构建与持续集成

五、持续集成常见问题解决方案

六、持续集成环境配置

七、公告板插件


一、什么是持续集成

持续集成(CI)是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。

每次集成都通过自动化的构建(编译、发布、自动化测试)来验证,从而尽快地发现集成错误。许多团队你发现这个过程可以大大减少集成的问题,让软件能够更快的开发高内聚的软件。

二、持续集成的优势

1、尽早发现缺陷

2、快速反馈,开发工程师能够马上获得提交的修改的反馈

3、建立简单易遵守的准则

  • 代码编写规范
  • Check in准则
  • 测试退出标准
  • 缺陷接受标准

4、发现开发中的问题

  • 什么类型的问题最容易break产品?
  • 哪些模块最容易出现问题?

三、持续集成面板

四、每日构建与持续集成

  • 每天至少提交一次代码做整体或局部编译
  • 不要提交无法构建的代码和编译有错误的代码
  • 立即修复无法集成的构建

五、持续集成常见问题解决方案

1、构建失败率高?

  • 代码在提交前没有充分测试,或单元测试覆盖率不够;
  • 可以尝试从最简单、最容易成功的场景开始

2、构建修复难?

保证每一个方法都有输出,trace可以快速定位缺陷;

善于使用windbg等debug工具;

测试人员有责任帮助开发人员定位缺陷根本原因

3、在失败构建上继续提交代码?

设置邮件通知功能,保证构建结果公开,透明

4、持续集成主要是技术上的问题?

  • 技术上基于KISS原则;
  • CI建设就是提升团队质量能力的过程

5、持续集成BVT通常1小时以上才能出结果?

缩短BVT测试集合,一般应在30分钟内结束,保证基本功能的验证结果在最短时间内发布

六、持续集成环境配置

1、VisualSVN Server Manager

2、TortoiseSVN

3、JDK

4、Jenkins

5、Plugins:

  • Mstest
  • Msbuild
  • Cpptest
  • Cppunit
  • Selenium plugin
  • Robotframework plugin

6、Bat/shell

七、公告板插件

安装build monitor插件

敏捷研发落地之持续集成相关推荐

  1. 研发协同平台持续集成实践

    源宝导读:"持续集成"是敏捷最佳实践中,保证高质量交付的关键环节之一.本文将分享,在大规模研发在线协同的背景下,如何支撑在线持续集成的高性能和高可用. 一.什么是持续集成 在< ...

  2. 研发协同平台持续集成Jenkins作业设计演进

    源宝导读:Jenkins作为一个开源的持续集成工具,被大家广泛使用.本文将分享,Jenkins在明源云研发协同平台中的运用,以及在其作业设计方面的演进历程. 一.作业设计1.0 起初,为了尽快推出研发 ...

  3. 研发协同平台持续集成2.0架构演进

    在上篇<研发协同平台持续集成实践>一文中我们分享了为什么要做持续集成,技术选型,工作原理以及实践落地.今天我们从架构上来分享一下架构层面的设计和演进. 持续集成1.0 在最开始设计的过程中 ...

  4. Jekins持续集成在ERP研发中的应用实践

    源宝导读:"持续集成"是敏捷最佳实践中,保证高质量交付的关键环节之一.本文将介绍明源云ERP系统在研发过程中,应用Jekins平台完成持续集成自动构建的实践. 一.认识持续集成 持 ...

  5. 【敏捷开发】jenkins「CI持续集成 CD持续部署」

    文章目录 前言 一.安装jenkins 1. 部署中的痛点 2. 什么是jenkins 3. jenkins的安装和配置 (1)下载 (2)安装 二.上传到运行服务器 1. jenkins构建服务器流 ...

  6. 首度揭秘:腾讯敏捷研发和极速交付破局之道

     导读  腾讯到底是怎么进行敏捷研发和极速产品交付的呢? 腾讯研发管理部高级产品经理.敏捷教练张贺,受邀在DevOpsDays深圳站中进行了相关分享. 他从"道.法.术.器"四个方 ...

  7. 持续集成(一)思想篇

     定义 持续集成(ContinuousIntegration,简称CI),又被称为持续构建(ContinuousBuild),最初是以一种研发管理的思想被提出来.1996年,持续集成的思想首先在Ken ...

  8. 研发协同平台持续交付2.0架构演进

    源宝导读:为了打通CI/CD环节,实现持续的端到端的交付能力,RDC平台提供了在线化的更新服务,随着业务量增长与场景的需要,我们对更新服务架构重新设计,实现了2.0版本.本文将介绍更新服务2.0的架构 ...

  9. 研发协同平台持续交付之代理服务实践

    源宝导读:插件系统大大提高了系统的扩展性,有利于模块化开发.系统发布后,当我们需要对系统进行扩充,可以再不编译的情况下更新系统的插件即可.基于热拔插的软件系统提高了持续交付能力,在添加新特性的同时保持 ...

最新文章

  1. selenium webdriver - 结束进程
  2. 败家玩意儿!Redis 竟然浪费了这么多内存!
  3. Keras-数据准备
  4. 第二十六期:HTTP 3的前世今生及尝鲜
  5. 利用VBA导出幻灯片为图片
  6. 判断两个时间段是否重叠的算法
  7. 令人期待的php7.4,PHP7.4新特性
  8. UVA11152 Safe Salutations【计算几何】
  9. 宝鸡市二检理科数学跟踪训练题
  10. QCombox隐藏某一项
  11. SQL面试经典题(含答案)
  12. 太阳直射点纬度计算公式_计算太阳高度角和太阳方位角确定太阳在天空中的位置...
  13. 玩游戏计算机什么比较重要,台式机和笔记本玩游戏-玩游戏电脑三大件哪一个最重要? – 手机爱问...
  14. 华侨大学计算机转专业要求,2021年华侨大学大一新生转专业及入学考试相关规定...
  15. 基于android系统的单词学习软件设计与开发【附项目源码+论文说明】分享
  16. 微信图片 自动上传到服务器,微信小程序怎样使图片上传至服务器
  17. 轻松快捷的安装Testlink,终于可以轻松搞定!
  18. html banner图片滚动,无缝循环滚动(适用banner、图片滚动)
  19. 搭建自己的 Git 服务器
  20. HTML-表格跨行跨列

热门文章

  1. 华为云桌面客户端_入冬第一场技术盛宴!DevRun开发者沙龙华为云武汉专场举办...
  2. 如何解决CentOS下使用yum安装python-pip失败
  3. 实施Kubernetes可以实现多云架构安全
  4. 如何限制上传服务器的文件容量,如何通过配置php文件限制上传文件的大小
  5. java hashmap 重复_java HashMap插入重复Key值问题
  6. arcgis里python窗口运行,在 Python 窗口中执行工具
  7. 目录文件和根目录文件夹
  8. poj1639(最小K度生成树)
  9. matlab模型参数不匹配怎么办,修改Simulink模型后出现初始状态大小不匹配的错误...
  10. 【动态规划专题】数字三角形模型