目录
一、什么是持续集成
持续集成(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插件