1 鼠标事件
1.1 使用自带的Click方法
看QTP的帮助,每个对象都有自带的Click方法,通过其中第三个参数指定具体的鼠标事件
例如:
Browser("New
Page").page("New Page").WebElement("html
tag:=Form").Click
|
0,0,micRightBtn
注意Click方法的前两个参数是相对坐标,即相对于对象控件左上角的坐标。
然而执行脚本时常常发现右键功能无法回放。这需要通过设置回放级别解决。例如:
Setting.WebPackage("ReplayType")
= 2
Browser("New
Page").page("New Page").WebElement("html
tag:=Form").Click
|
0,0,micRightBtn
Setting.WebPackage("ReplayType") = 1
1.2 使用自带的FireEvent方法
具体使用参考QTP的帮助吧,需要提醒一下,右键菜单的弹出对应的是"oncontextmenu"事件,这个帮助里没有提到,当然依赖于开发的代码实现。
1.3 使用mercury.devicereplay
Set devReplay =
CreateObject("mercury.devicereplay")
devReplay.MouseClick absx+4,absy+4,2
1.4 使用Windows底层的mouse_event
如果上面的方法仍然不管用,就要采用更底层的方法了。不过这种方式不推荐,因为mouse_event识别的是绝对坐标,你还需要在调用mouse_event前获取对象的绝对坐标。需要说明的是,如果没有使用MOUSEEVENTF_ABSOLUTE,函数默认的是相对于鼠标当前位置的点,用0,0表示,会被认为是当前鼠标所在的点。
Extern.Declare micVoid,
"mouse_event", "user32.dll", "mouse_event",
micByte,micByte,micDWord,micULong
Extern.mouse_event MOUSEEVENTF_RIGHTDOWN,0,0,0
2 键盘事件
2.1 SendKeys
最常用的模拟键盘操作的事件就是SendKeys了,具体说明一样参考QTP的帮助。
需要说明的是QTP帮助中的例子,需要做一些调整,QTP中执行不需要显示指定Wscrīpt执行shell命令,否则会报错。正确的例子如下:
Set WshShell = CreateObject("Wscrīpt.Shell")
WshShell.SendKeys "{DOWN}"
2.2Mercury.DeviceReplay
Set devReplay =
CreateObject("mercury.devicereplay")
devReplay.SendString("a")
下面这篇文章介绍的比较清楚。
http://www.51testing.com/?161787/action_viewspace_itemid_84200.html
2.3 使用Windows底层的keybd_event
Extern.Declare micVoid,
"keybd_event", "user32.dll", "keybd_event",
micByte,micByte,micDWord,micULong
Extern.keybd_event 42,0,0,0
注意一下这里的第一个参数是10进制的。
SendKeys的使用要方便一点,但是稳定性不如后者,
Function RtClick( Obj )
absx = Obj.GetROProperty("abs_x")
absy = Obj.GetROProperty("abs_y")
Set devReplay = CreateObject("mercury.devicereplay")
devReplay.MouseClick absx+4,absy+4,2
set devReplay = nothing
End Function
分享到:
相关推荐
可以模拟鼠标或键盘操作,在方法里,比调用API方便多了
QTP模拟键盘输入方法,很好用的一种,简便,实用!需要的童鞋可以下载来试下!
QTP利用VBS的SendKeys模拟键盘操作
QTP是quicktest Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的手动测试,主要是用于回归测试和测试同一软件的新版本
QTP安装和使用教程; QTP自动化测试; QTP安装过程中的注意事项;
QTP脚本语言VBS编程VBScript学习的的基础笔记整理,QTP脚本语言VBS的编程能力的操作教程,文档中的图文解说非常详细,很适合初学者和QTP能力的进阶提升
QTP安装和配置 全过成详解 手把手教你安装和配置
QTP的datatable操作整理,主要是对datatable的使用
QTP QTP
qtp资料qtp资料
QTP破解版安装教程和工具
教会您如何安装qtp11,里面每一步步骤都说的非常仔细
朋友总结的一些关于QTP的知识和介绍,很不错;朋友总结的一些关于QTP的知识和介绍,很不错
qtp10破解和ie8补丁(包含QTP_00626.exe、QTPWEB_00037.EXE)
QTP对象库简介
43. 一个万能的键盘模拟函数 110 44. XML参数化 115 45. Oracle QTP 115 46. 对象库的管理与合并 116 47. change sysdate 120 48. Import Excel 120 49. Call Dll 121 50. Call Function 123 51. Global and local ...
提供QTP下载地址
qtp9.2插件qtp9.2插件qtp9.2插件qtp9.2插件qtp9.2插件qtp9.2插件qtp9.2插件qtp9.2插件
QTP支持在广泛的操作系统平台和测试环境下安装,并且仅需很少的设置既可开始使用。本章简要介绍QTP9.2的安装设置过程,并且介绍如何开始编写一个最简单的QTP测试脚本