AutoMan自动化云测试平台
AutoMan的前身是tCommon和TAM(taobao-automan),经过对两者不断的优化和扩展,逐步形成现在一套完整的页面自动化平台, 意在提高测试人员的测试效率,测试质量,象踏上“风火轮”那样腾挪驰骋于整个测试过程。
一. AutoMan 解决的问题
AutoMan对于自动化活动的一体化管理
解决了以用例为中心的思想,测试脚本作为一种测试执行的手段
执行报表不仅是测试脚步执行的一个自然产物,更是说明了执行哪些测试用例,每个测试用例的状态如何
执行报表可以结合手工执行和自动执行,统一为一个执行报表,说明测试执行的覆盖率
测试用例,测试脚本,执行报表在一个统一的在线平台进行维护,查看,不像以前的自动化过程中,每一个节点存在于不同的文件中,且只线性流转,如下图:
2. 自动化测试资源的模块化思想
AutoMan 高度抽象了自动化测试各个依赖资源,形成了基础词汇,专业词汇,Page Model, DB Model,测试云等概念。
使测试脚本编写只是根据测试用例,进行各个资源的组合,而不需要很强的编码能力;
使各个模块形成很强的共享能力,很好的引用了DRY (Don’t Repeat Yourself) 的思想;
由于脚本是对各个资源的简单组合,使脚本编写开始的时间不必局限于程序的开发完成,只要依赖资源可以准备了,脚本编写也就开始了,各个资源完善的过程,也就是可执行脚本完善的过程。
3. 解决了两个测试过程: 回归测试 和 项目自动化测试
AutoMan定制了淘宝回归流程的操作方法
通过各资源的模块化,提前测试脚本,测试数据的开发时间
采用分布式执行的方法的,加快了批量脚本执行的时间
形成统一的回归和项目自动化报表
二.AutoMan 现有的主要模块介绍
1.AutoMan Framework
是AutoMan自动化脚本框架的核心,提供操作浏览器,浏览器控件,数据库,windows操作等基础词汇,使用户方便的使用各个操作源。AutoMan Framework以ruby gem包的形势发布,升级。
2. Page Model
抽象了脚本依赖的页面对象,以一个页面为建模单元,对淘宝所有的页面进行建模,使成为快速编写规范脚本的强大动力。 这样脚本开发时间大大提前,并使脚本开发的成员不仅仅局限于测试人员,可以把开发,UED资源也作为脚本开发的重要成员。
3.DB Model
对测试所依赖的各个数据库和表进行建模,对数据库的操作不需要再进行麻烦的连接,取值,提交等操作,采用DB Model提供的接口使你一句话解决上面的问题,不仅解决了自动化数据操作的问题,也方便了手工测试时的数据操作问题。
对自动化脚本的初始化数据,提供一个web化管理页面,使你数据准备工作变得更为轻松,时尚
4. 云测试执行平台
采用分布式执行的方式,测试执行的效率可以根据云端测试机器的数量线性扩展
可以根据各种回归需求,定制执行流程
5. 测试报表
定制测试执行报表
产品线脚本质量报表
Bug曲线
……
最终产出对效率和质量的直观统计
三.AutoMan 的发展
AutoMan 不仅只为大家展现了一个自动化框架,从她一开始就在为提供一个测试解决方案而努力,他的发展大致有如下三步:
具体的内容如下:
对于2010年我们会致力于自动化解决方案中各模块的不断深入,比如对于自动化脚本框架,会考虑些兼容性问题,分布式执行性能的不断优化,测试用例与测试脚本的同步,易用性的提升等。
2011年我们将更多地去考虑我们整个测试的解决方案,AutoMan将不仅局限于自动化测试平台,也是测试日常工作的核心平台。