开发者社区> 问答> 正文

测试平台对持续集成的支持(之一)——概述


       何为持续集成?借用百度的一段话:大师Martin Fowler对持续集成是这样定义的:持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。


       从字面意义,持续集成已经清楚的表达了它的含义,但我们从测试的角度去看待持续集成往往会产生困惑,即测试人员在持续集成中的工作内容中包含了哪些?


       在回答这个问题之前,先深一点的挖掘一下持续集成的定义,上述持续集成的定义中的团队开发成员中已经包含了测试人员,只不过这时的测试人员是测试代码的开发者。我们再对持续集成定义进行一个形象点的说明:团队中开发的角色负责开发代码的编写,编译。测试角色负责相应测试代码的编写。开发和测试会频繁的将各自的代码合起来在搭建好的测试环境进行自动化的测试。自动化的测试过程中会反复进行测试代码和开发代码的错误反馈和调试,当开发代码的质量和功能达到一定程度,就会对开发代码进行发布。


       上述这段形象点的说明会在一天内发生一次或数次。从这里我们看到,测试人员在持续集成中的活动包括:测试代码跟随开发代码的编写,调试,对开发代码在搭建好的测试环境中进行自动化测试执行(测试代码选择,调度分发,执行),问题的快速反馈。这些活动的每一个环节第一要快速,第二要准确,第三要稳定。所以持续集成的活动对测试人员(角色)要求非常高,因为开发很多时候可以把完成部分功能(我们姑且称为不完整开发代码)的开发代码就可以进入自动化测试,但测试人员要及时准备好对应不完整开发代码的完整的测试代码,否则自动化测试意义不大。所以从这个意义上讲持续集成中的测试活动决定着持续集成的成败。


       重新阐述一下,测试人员在持续集成中的工作内容中包含:快速,准确,稳定的完成——测试代码跟随开发代码的编写,调试,对开发代码在搭建好的测试环境中进行自动化测试执行(测试代码选择,调度分发,执行),问题的反馈。所以一个支持持续集成的测试平台要具备强有力的支持测试人员的上述工作的能力。


云效平台官网地址:http://yunxiao.aliyun.com/

展开
收起
云效平台 2016-06-22 19:25:08 4283 0
1 条回答
写回答
取消 提交回答
  • 码农|Coder| Pythonista
    感谢您的分享!
    2016-08-01 08:32:46
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
移动互联网测试到质量的转变 立即下载
给ITer的技术实战进阶课-阿里CIO学院独家教材(四) 立即下载
F2etest — 多浏览器兼容性测试整体解决方案 立即下载