关闭

使用Java构建稳定可靠的QTP自动化测试

发表于:2010-2-10 14:49

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:sunshinelius    来源:51Testing软件测试博客

  了解和使用过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>

21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • kaidong12
    2010-4-08 11:28:38

    有个鸟的好处啊,只是在外面套了一层而已,完全可以用vbscript实现,根本没有任何新意。
    真正自动化是调用QTP的自动化对象。

  • goal1860
    2010-2-10 18:28:50

    qtpdriver怎么调用只字不提,言之无物,空洞的很

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号