开发者社区> 问答> 正文

测试平台对持续集成的支持(之五)——测试代码调度与执行


      说起测试代码调度,大家就会想起Hudson。是的,Hudson虽然叫CI服务器,但本质上就是一个定时调度器。Hudson的资料网上很多,相信大家也都很熟悉,这里不再赘述。云效平台在Hudson基础上进行了一些封装以便具备定时触发和手工触发两种调度方式,并使得上述两种调度方式中任务的创建对用户而言都是透明的。即对用户而言,只要在测试平台指定需要运行的一批自动化测试用例,Hudson就会自行创建任务并按照用户的要求的调度方式进行调度。


      这里重点讲一讲测试代码的执行,自动化分层测试中,各层的测试代码都有各自的执行框架,比如单元测试的Junit,接口测试的Qtester,UI测试的watir、Selenium等。不少公司常常会对执行框架进行进一步封装改造,比如改造Selenium或watir以支持多浏览器的测试。云效平台对Selenium和watir进行了彻底的改造,创造性的将测试代码与执行框架进行了彻底分离,避免了将来因为更换执行框架而不得不重新编写测试代码的痛苦。实现了UI自动化用例执行框架对测试代码的可插拔式。用户在执行同一批自动化测试用例时,还可以根据需要选择不同的执行框架来执行。


      测试代码的执行框架的改造还有一个重点在日志的规范化。日志的规范化的好处在于测试平台在将大量的错误日志自动归类时,可以根据统一的格式和内容容易而准确地进行自动分类。否则错误自动分类就成为一个空谈。目前测试平台已经解决了对UI测试代码的错误日志的自动归类的技术难点。


      作为一个测试平台,如果不能支持各种各样的执行框架下的测试代码的接入(测试代码,结果格式)就不能称为真正意义上的测试平台。但如果全部支持,对架构设计和工作量又是极大的挑战。如何取得两者之间的平衡对测试平台而言是一个挑战。


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

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

相关电子书

更多
前端自动化测试 立即下载
ICA安全标准组测试认证分享 立即下载
云效助力企业集成安全到DevOps中 立即下载