QTP鼠标点击和浏览器事件的动态切换

今天在群里有人问到一个问题,我觉得应该会有很多人会碰到,今天根据自己的思路把这个解决方案整理出来,供自己和大家参考

需求描述:

当输入一个身份证号码的时候,这个号码所对应的数据会被加载到所属的省和市的下拉列表里

 

问题描述:

按照需求,手动操作没有问题,数据会被正常的加载到所需的列表里了,但是当跑脚本的时候就会发现当输入身份证号码以后,对应的数据不能被加载出来

 

解决方法:

遇到这种情况一般都是输入身份证号码以后,没有正确的触发身份证号码输入完毕的事件(一般该事件触发机制不是根据号码长度来判断,而是根据输入号码后,鼠标点击其他控件来触发该事件),这种情况就需要模拟鼠标操作来强制触发该事件,从而可以把数据正确加载进来,而QTP默认回放模式是基于事件的,需要动态的修改回放模式为基于鼠标操作的。下面是QTP Help里展示了怎么动态修改回放模式的具体内容

KeyName

Value Type

Possible Values/Description

ReplayType
Number
Indicates how mouse operations should be run. The value can be one of the following:
1 - Runs mouse operations using browser events.
2 - Runs mouse operations using the mouse.
Usage:
Setting.WebPackage("ReplayType") = 2

 

 

具体的操作代码如下

1 Setting.WebPackage("ReplayType") = 2
2 Browser("").Page("").WebEdit("").click
3 Setting.WebPackage("ReplayType") = 1

通过以上代码就能实现鼠标操作事件和浏览器事件的动态切换,从而达到在回放模式为鼠标操作情况下,当对一个对象执行单击鼠标操作的时候,触发身份证号码输入完毕的事件

 

posted @ 2014-01-15 13:30  mark..  阅读(827)  评论(0编辑  收藏  举报