标题: Delphi系统的QTP测试一些经验总结 [打印本页] 作者: wuei9090 时间: 2008-12-16 10:20 标题: Delphi系统的QTP测试一些经验总结 目前手头上的一个Delphi系统测试项目已经进行了一段时间,总结些经验和大家分享。
①:QTP对Delphi的支持
目前用的是XP sp3+QTP9.5+Delphi add-in,Delphi是种比较老的开发语言,所以不可避免的大量的应用了第三方插件,所以QTP对其系统的支持其实很弱。Delphi add-in可以在HP主页上下载到,需要xp sp3才可以安装。装上插件后,基本上全部控件可以用delphi_name这个属性来唯一标示出来,而且可以提取标准delphi控件的属性,但是对第三方控件的属性依然基本上无解。
这里有个小提示
仅仅装上插件是无法获取delphi_name属性的,需要改一些delphi系统代码并且重新编译下。这个最好是自己找开发人员确认下。毕竟作为一个测试人员随便改代码是很不厚道的。这点从帮助文档里面可以得到详细的帮助,内容如下
1:Add MicDelphiAgent to the Uses section of your application's project file (project.dpr) as shown in the example below
program flight;
uses
MicDelphiAgent,
Forms,
Windows;
($R*.RES)
begin
Application.Initialize
Application.Title :='Flight Reservation';
Application.Run;
end.
2:Add the <QuickTest Professional Installation folder>\dat\Extensibility\Delphi folder to your Delphi project search path or copy the contents of the <QuickTest Professional Installation folder>\dat\Extensibility\Delphi folder to your project folder.
96是小键盘上0的键盘码 第三个参数0是键盘按下动作,2是键盘弹起动作
友情提供:送一个小键盘数字串连续输入的方法。
Sub NumInput(num)
extern.Declare micvoid,"keybd_event","user32.dll","keybd_event",micByte,micByte,micLong,micLong
If num <> "" Then
sum = Len(num)
For i=1 To sum
num = Mid (num,i,1)
Select Case num
Case "0"
key1=96
Case "1"
key1=97
Case "2"
key1=98
Case "3"
key1=99
Case "4"
key1=100
Case "5"
key1=101
Case "6"
key1=102
Case "7"
key1=103
Case "8"
key1=104
Case "9"
key1=105
End Select
extern.keybd_event key1,0,0,0
extern.keybd_event key1,0,2,0
Next
End If
End Sub