它完全避免了开发者们的"除虫会议"--以前开发者们经常需要开这样的会,因为某个人在工作的时候踩进了别人的领域、影响了别人的代码,而被影响的人还不知道发生了什么,于是bug就出现了。
这样的bug绝大多数都可以在引入的同一天就被发现。由于一天之中发生变动的部分并不多,所以可以很快找到出错的位置。
持续集成可以把发现的错误根据源代码的作者,以邮件和日志的方式分发给作者,第二天一上班的第一件事就是先修改错误。
持续集成可以减少集成阶段"捉虫"消耗的时间、 频繁发布新版本的时间,从而最终提高生产力和软件质量。
3、理想的持续集成的实现方法:
A)、同一个软件产品要有集中的同一台开发服务器,即所有人的最新的、各自编译通过的源代码都在配置管理工具如VSS中。
B)、有一台运行主创建的机器,有计划的运行日构建, 日构建中有一个创建进程,该创建进程是在一个随时保持运行的Java类中进行的,如果没有创建任务,创建进程就一直循环等待。
C)、守护进程将全部代码(包括原程序和配置文件,数据库脚本等)提取到创建机器的一个目录中。提取完成之后,守护进程就会在这个目录里调用Ant脚本。
D)、Ant会接管整个创建过程,对所有源代码做一次完整的创建。Ant脚本会负责整个编译过程,并把得到的class文件放进六个jar包里,发布到EJB服务器上。
创建结束之后,创建守护进程会给所有向最新一次创建归还了代码的开发者发一个e-mail,汇报创建的情况。
E)、当Ant完成了编译和发布的工作之后,创建守护进程就会在EJB服务器上开始运行新的jar,同时开始运行BVT测试套件:即利用Junit进行单元测试。
单元测试完成后,日构建会把单元测试报告发给有错误的开发人员。
F)、为了利用自动化工具(WINRUNNER)进行功能测试,必须对JSP编译,利用jspc命令进行包装一层,就可以自动的对所有的jsp文件进行编译, 但由于编译jsp的时间非常长(越比编译java代码时间长),所以一般利用单独的编译服务器进行编译。 发布编译好的jsp文件进行自动化测试的成功率高(因为第一次运行jsp文件非常慢,而自动化测试最忌讳运行时和录制时等待得时间不一样)。 而功能性自动化测试也需要按计划有顺序的执行,这需要TestDirector测试管理系统来调度Winrunner进行测试。
让所有的重复的繁琐的事情都完全自动化,并且要经常进行集成,让重复的测试自动化。
四、测试套件实现测试流程.
当具备持续集成和测试自动化的能力后,需要一套测试体系来支持和维护您的测试流程,确保测试过程是符合流程、标准,而且是持续改进的。
(一)、为什么需要一个流程?很多公司投入了大量的测试经费,然而还是没有收到预期的收益。这可能是因为:缺乏足够的测试计划、缺乏测试的优先次序、工作的重复、没有利用工具来配合人工测试、没有利用测试自动化工具、测试自动化运用不够或者运用的不恰当等等。所以需要有测试套件的实施流程。
文章来源于领测软件测试网 https://www.ltesting.net/