敏捷研发落地之持续集成
目录
一、什么是持续集成
二、持续集成的优势
三、持续集成面板
四、每日构建与持续集成
五、持续集成常见问题解决方案
六、持续集成环境配置
七、公告板插件
一、什么是持续集成
持续集成(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插件
敏捷研发落地之持续集成相关推荐
- 研发协同平台持续集成实践
源宝导读:"持续集成"是敏捷最佳实践中,保证高质量交付的关键环节之一.本文将分享,在大规模研发在线协同的背景下,如何支撑在线持续集成的高性能和高可用. 一.什么是持续集成 在< ...
- 研发协同平台持续集成Jenkins作业设计演进
源宝导读:Jenkins作为一个开源的持续集成工具,被大家广泛使用.本文将分享,Jenkins在明源云研发协同平台中的运用,以及在其作业设计方面的演进历程. 一.作业设计1.0 起初,为了尽快推出研发 ...
- 研发协同平台持续集成2.0架构演进
在上篇<研发协同平台持续集成实践>一文中我们分享了为什么要做持续集成,技术选型,工作原理以及实践落地.今天我们从架构上来分享一下架构层面的设计和演进. 持续集成1.0 在最开始设计的过程中 ...
- Jekins持续集成在ERP研发中的应用实践
源宝导读:"持续集成"是敏捷最佳实践中,保证高质量交付的关键环节之一.本文将介绍明源云ERP系统在研发过程中,应用Jekins平台完成持续集成自动构建的实践. 一.认识持续集成 持 ...
- 【敏捷开发】jenkins「CI持续集成 CD持续部署」
文章目录 前言 一.安装jenkins 1. 部署中的痛点 2. 什么是jenkins 3. jenkins的安装和配置 (1)下载 (2)安装 二.上传到运行服务器 1. jenkins构建服务器流 ...
- 首度揭秘:腾讯敏捷研发和极速交付破局之道
导读 腾讯到底是怎么进行敏捷研发和极速产品交付的呢? 腾讯研发管理部高级产品经理.敏捷教练张贺,受邀在DevOpsDays深圳站中进行了相关分享. 他从"道.法.术.器"四个方 ...
- 持续集成(一)思想篇
定义 持续集成(ContinuousIntegration,简称CI),又被称为持续构建(ContinuousBuild),最初是以一种研发管理的思想被提出来.1996年,持续集成的思想首先在Ken ...
- 研发协同平台持续交付2.0架构演进
源宝导读:为了打通CI/CD环节,实现持续的端到端的交付能力,RDC平台提供了在线化的更新服务,随着业务量增长与场景的需要,我们对更新服务架构重新设计,实现了2.0版本.本文将介绍更新服务2.0的架构 ...
- 研发协同平台持续交付之代理服务实践
源宝导读:插件系统大大提高了系统的扩展性,有利于模块化开发.系统发布后,当我们需要对系统进行扩充,可以再不编译的情况下更新系统的插件即可.基于热拔插的软件系统提高了持续交付能力,在添加新特性的同时保持 ...
最新文章
- selenium webdriver - 结束进程
- 败家玩意儿!Redis 竟然浪费了这么多内存!
- Keras-数据准备
- 第二十六期:HTTP 3的前世今生及尝鲜
- 利用VBA导出幻灯片为图片
- 判断两个时间段是否重叠的算法
- 令人期待的php7.4,PHP7.4新特性
- UVA11152 Safe Salutations【计算几何】
- 宝鸡市二检理科数学跟踪训练题
- QCombox隐藏某一项
- SQL面试经典题(含答案)
- 太阳直射点纬度计算公式_计算太阳高度角和太阳方位角确定太阳在天空中的位置...
- 玩游戏计算机什么比较重要,台式机和笔记本玩游戏-玩游戏电脑三大件哪一个最重要? – 手机爱问...
- 华侨大学计算机转专业要求,2021年华侨大学大一新生转专业及入学考试相关规定...
- 基于android系统的单词学习软件设计与开发【附项目源码+论文说明】分享
- 微信图片 自动上传到服务器,微信小程序怎样使图片上传至服务器
- 轻松快捷的安装Testlink,终于可以轻松搞定!
- html banner图片滚动,无缝循环滚动(适用banner、图片滚动)
- 搭建自己的 Git 服务器
- HTML-表格跨行跨列
热门文章
- 华为云桌面客户端_入冬第一场技术盛宴!DevRun开发者沙龙华为云武汉专场举办...
- 如何解决CentOS下使用yum安装python-pip失败
- 实施Kubernetes可以实现多云架构安全
- 如何限制上传服务器的文件容量,如何通过配置php文件限制上传文件的大小
- java hashmap 重复_java HashMap插入重复Key值问题
- arcgis里python窗口运行,在 Python 窗口中执行工具
- 目录文件和根目录文件夹
- poj1639(最小K度生成树)
- matlab模型参数不匹配怎么办,修改Simulink模型后出现初始状态大小不匹配的错误...
- 【动态规划专题】数字三角形模型