说起测试代码调度,大家就会想起Hudson。是的,Hudson虽然叫CI服务器,但本质上就是一个定时调度器。Hudson的资料网上很多,相信大家也都很熟悉,这里不再赘述。云效平台在Hudson基础上进行了一些封装以便具备定时触发和手工触发两种调度方式,并使得上述两种调度方式中任务的创建对用户而言都是透明的。即对用户而言,只要在测试平台指定需要运行的一批自动化测试用例,Hudson就会自行创建任务并按照用户的要求的调度方式进行调度。
这里重点讲一讲测试代码的执行,自动化分层测试中,各层的测试代码都有各自的执行框架,比如单元测试的Junit,接口测试的Qtester,UI测试的watir、Selenium等。不少公司常常会对执行框架进行进一步封装改造,比如改造Selenium或watir以支持多浏览器的测试。云效平台对Selenium和watir进行了彻底的改造,创造性的将测试代码与执行框架进行了彻底分离,避免了将来因为更换执行框架而不得不重新编写测试代码的痛苦。实现了UI自动化用例执行框架对测试代码的可插拔式。用户在执行同一批自动化测试用例时,还可以根据需要选择不同的执行框架来执行。
测试代码的执行框架的改造还有一个重点在日志的规范化。日志的规范化的好处在于测试平台在将大量的错误日志自动归类时,可以根据统一的格式和内容容易而准确地进行自动分类。否则错误自动分类就成为一个空谈。目前测试平台已经解决了对UI测试代码的错误日志的自动归类的技术难点。
作为一个测试平台,如果不能支持各种各样的执行框架下的测试代码的接入(测试代码,结果格式)就不能称为真正意义上的测试平台。但如果全部支持,对架构设计和工作量又是极大的挑战。如何取得两者之间的平衡对测试平台而言是一个挑战。
云效平台官网地址:http://yunxiao.aliyun.com/
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。