在软件行业迅猛发展的今天,随着软件规模的扩张和越来越高的软件质量要求,软件自动化测试也面临着更大的挑战。这体现在:
1、实施自动化测试,往往无法获得较高的收益成本比,从而不能实现减轻手工测试工作量的最终目的。
2、靠某个单一的测试工具,不能形成完整有效的自动化测试解决方案。
关于1,主要涉及到自动化测试案例的选取和实施时机等策略问题,可参看前传文章《自动化测试基础理论及实施经验》。
2则是本篇着重分析并解决的问题。
下面将结合实际测试工作问题和Automation Center框架实例,介绍自动化测试框架的实施思想。
1、Automation Center介绍
AC(Automation Center)是一个分布式软件自动化测试框架。与其他软件框架产品不同的是,AC在时间上贯穿了整个软件测试流程,在空间上整合众多automation资源和系统资源。因此,对于用户来说,AC是一个完整的软件框架解决方案。
1.1 AC架构示意
AC以Test Job Object Model(测试任务模型)为核心,以Test Job File(测试任务文件)为输入,根据Job type启动不同类型的测试引擎,执行测试任务,最后输出一份基于html的自动化测试报告。如图:
图1-1 Automation Center结构示意图
AC目前支持五种主流测试引擎,Ant,Java,Selnium,QTP和Junit,这意味着,AC的用户可以将这些不同类型的测试脚本统一集成到AC中进行管理,调度和执行,最后形成一份自动化测试报告。
同时,JobEngine是基于Java的interface接口技术开发,因此,AC的用户也可以根据自己的需求对JobEngine进行扩展,开发不同Engine,比如RobotEngine,silkEngine等等。
……………………
查看全文请点击下载:http://www.51testing.com/html/39/n-234539.html
AC不依赖于任何一种测试工具或脚本语言,cvs的访问用java实现,基于windows installer的产品安装,使用vbscript是最为方便不过的了,而桌面程序测试和Ajax的web测试则分别由QTP和selenium来各自承担。AC则将众多类型的自动化测试案例整合在一起,成为一个完整的测试解决方案。
Depends机制提高了自动化测试的执行效率,如果先决条件TestJob运行失败,则后续TestJob不会被运行。
JobInput和JobOutput为TestJob之间的数据交互提供了通道。