QTP之回放模式(ReplayType)

时间:2021-05-21 19:24:33

QTP的回放模式有两种,如下所示:

1.  Event模式  --  事件跟踪

2.  Mouse模式 --   鼠标跟踪

Event模式就是我们平时默认用的模式,也就是事件,其实QTP的click方法只是触发了对象的CLICK事件,而并未真正通过鼠标来进行点击按钮。

而如果我们使用的是Mouse模式的话,我们会看到回放的时候,鼠标是跟着对象走的,也就是鼠标跟踪模式。

下面我们来具体看一下是怎么切换回放模式:

切换回放模式有两种方法:

a.修改QTP OPTIONS设置

我们进入到TOOLS--》options--》WEB-->ADVANCED  然后列表拖到最下面可以找到REPLAY TYPE,可以选择是通过Event或者Mouse回放模式。

我们可以看到QTP默认的回放模式是EVENT,也就是事件跟踪。如果我们现在切换到MOUSE,点击确认后,回放时鼠标就会进行跟踪,大家可以试一下。

b.代码控制(个人推荐第二种)

为什么推荐这种方式,因为这种方式可以在QTP运行时根据我们的个性化需要来进行控制,随时可以进行开和关,而使用第一种方式就不能够达到以上的效果。

代码如下:

Setting.WebPackage("ReplayType") = 2

这句话的意思就是把回放模式设置为2, 1代表事件跟踪,2代表鼠标跟踪

很清楚了吧,这样我们就可以在QTP运行时个性化的定制我们的回放模式

那说到这里,肯定会有朋友问,那鼠标模式有什么用,我们平时默认的事件模式不是都够用了吗

,接下来就说一下,我们为什么要使用鼠标模式,比如触发了CLICK事件后,应该弹出页面的,却被IE给拦截了,而手工点击可以成功;还有当我们需要操作鼠标右键的时候,等等这些情况我们都可以临时把回放模式切换成鼠标模式。

之前在用到loadrunner自带订票网站进行订票时,发现continue按钮手工可以点击,但是通过脚本执行时,脚本有点击操作,但是事件未真正发生,点击continue按钮后,没有进入到下一页面。后来通过动态修改回放模式,改成鼠标模式,则事件响应正常,问题得到解决。

Setting.WebPackage("ReplayType") = 2 'Mouse

Browser("Web Tours").Page("Web Tours").Frame("info").Image("findFlights").Click

Setting.WebPackage("ReplayType")=1'Events