QTP测试delphi程序

上一篇 / 下一篇  2015-11-23 15:55:22 / 个人分类:QTP

近来接到项任务,用QTP测试delphi写的一个程序,识别对象问题成了大难题。下面说一下在解决这个问题中的一些经历:

首先,下了一个QTP9.2的版本,发现不识别delphi,于是根据网上网友的意见,下了个8.2的delphi插件,安装上后,可以进行识别,大喜,在制作脚本时,QTP时常死锁,也就是崩溃(我也快崩溃了),几个小时的时间,电脑死机两次,查找解决方法,网上貌似没有查找到改处理方法,据说目前无法解决。

然后,根据查询的资料,下QTP10.0,用自带的delphi插件(在安装QTP时,要勾选上安装delphi插件,默认是不安装的。),装上后,可识别,录制的对象前都会带上“delphi“标志,录制完毕,大部分步骤无法回放,而且是一回放,QTP立马提示"未知错误",网上查询结果是未配置delphi。配置步骤如下:

配置delphi(中文)
1)        将<QuickTest Professional Installation folder>\dat\Extensibility\Delphi 包含到你的工程。通过设置library path或者将该文件夹复制到你的工程所在目录等方式都可以。
2)        添加 MicDelphiAgent到工程文件的Uses部分。例如:
program flight;
uses
      MicDelphiAgent,
      Forms,     
Windows;
($R*.RES)
begin
       Application.Initialize
       Application.Title :='Flight Reservation';
       Application.Run;
end.

但在QTP10.0的安装目录下,未找到步骤1的路径,后来查到10.0要安装补丁,于是安装补丁QTP_00591.exe,路径出现,完成了第一步。但第二步可能需要研发人员去操作,鉴于公司流程繁杂,难以实现,于是放弃。

想从写脚本的技术上解决该问题,于是查找到可以用对象映射的方式来解决,对象映射完毕,录制时也识别准确,但回放时仍不识别,杯具。

逼于无奈,还是用了描述性编程,由于QTP识别的所有控件都是winobject,在对象的操作方法上有限制,最后决定用对象映射先识别对象名称,然后再用描述性编程来写脚本,解决!(之所以不用QTP10.0的自带插件识别对象名称,是因为:第一,插件试用期只有15天,好像没有破解插件的办法,只能过期后用清空信息来延长使用时间,比较麻烦;第二,用QTP识别出的对象,都带有delphi标志,写起来麻烦。)

PS:插件延长办法:控制面板-添加删除程序中删除所有附加插件,使用REGCLEAN注册表软件清理一下注册表,打开QTP一次, 再安装QTP95所需插件,打开QTP95,熟悉的13天又回来了.


TAG: 程序

 

评分:0

我来说两句

我的栏目

日历

« 2024-04-05  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 6042
  • 日志数: 6
  • 文件数: 1
  • 建立时间: 2009-09-02
  • 更新时间: 2015-11-25

RSS订阅

Open Toolbar