转:使用Java构建稳定可靠的QTP自动化测试
上一篇 /
下一篇 2010-04-25 11:40:16
使用Java构建稳定可靠的QTP自动化测试 了解和使用过QTP的朋友都知
道,QTP的脚本开发语言都是基于vbscript的,由此所衍生出的lib,automation也都大多采用vbscript的,可以说,qtp的自
动化测试是一个vbscript的世界。但vbscript作为脚本语言来说,尤其天生的缺陷,比如出错处理非常薄弱,不适合构建大规模的自动化测试,如
测试框架等等。为此我开始将qtp的automation执行转化为java语言,以能够符合框架的大规模开发要求。下面将设计及实现介绍一
下,以抛砖引玉。 QTPDriver_java的目标: 1. 使用java语言实现qtp automation object
model,并在此基础上构建完整的自动化测试解决方案,包括健壮的错误诊断处理,和丰富的自动化测试报告等等。 2. 为qtp脚本提供丰富的框架规范及接口,以解决qtp脚本的健壮性和可诊断性问题。 目前有两个配置文件: 1. QTP 环境配置文件config.xml,格式如下: 主要是qtp启动的相关参数,包括synctimeout,screenshot的设置,测试运行的最大超时时间等等。qtpdriver会读取这
些参数,并通过automation object model设置到qtp的运行实例中去 <?xml version=”1.0″ encoding=”UTF-8″?> <!DOCTYPE properties SYSTEM “http://java.sun.com/dtd/properties.dtd“> <properties> <comment>This is Config xml for AC agent,the screen shot value
could be ERROR,NONE,ALL</comment> <entry key=”GENERATE_FILE_ONLY”>false</entry> <entry key=”RECOVERY_LEVEL”>1</entry> <entry key=”SCREENSHOT”>ERROR</entry> <entry key=”SYNC_TIMEOUT”>20000</entry> <entry key=”TEST_TIMEOUT”>18000</entry> </properties> 2. 测试执行脚本任务文件,格式如下: qtpdriver会在运行的时候,读取此xml,执行不同响应的测试任务 <suite name=”demo_test_suite” desc=”this is a suite for
demo”> <component name=”demo_test_component” desc=”this is a component
test for demo”> <casefile
file=”D:\learn\cesoo\cesooProject\JavaQTP\QTPAgent\driver\testscripts\flightDemo”
desc=”flightDemo”></casefile> <casefile file=”testscripts\flightDemo”
desc=”flightDemo”></casefile> </component> </suite> 3. java_qtpDriver的功能如下: 1)启动qtp,按照配置文件中的参数,完成qtp的相关设置 2)加载recovery 场景和相关lib 3)读取测试任务xml文件,循环执行指定的测试任务,直到结束 4)生成qtp结果报告,并在qtp报告的基础上,再做一层分析,最终生成xml报告,如下: 总结一下: qtp_driver的优势是 1. 全java编写,提高测试的稳定性和可靠性 2. java命令即可触发自动化测试的执行和结果报告的收集,完全实现无人值守运行 3. 强大的报告功能,生成基于qtp的总览报告及细分报告,直观简洁,适合回归测试 4. 持续开发改进 qtp_driver的劣势是…..目前下载只对读者用户开放,普通用户必须经过管理员升级,方可获得下载权限 使用指南 1. 下载附件zip包,并解压 2. 双击运行install_driver.bat,完成driver系统文件注册 3. 编辑TestSuite.xml文件。通过增加<casefile>节点,来添加已有的qtp脚本 3. 双击runqtp.bat,开始运行qtp测试任务 4.
会在当前目录下生成results子目录,保存qtp各个脚本的测试结果报告,同时ac会为您生成一份总览报告ACSummary.html,在
results/timestamp目录下。
可在论坛下载框架jar包http://www.cesoo.com/bbs/viewtopic.php?f=3&t=28 |
收藏
举报
TAG: