欢迎光临! 当我们在录制脚本中,有时会遇到某个对象回放时不能识别.那么就可以考虑是不是可以做个虚拟对象来代替它.您可以将这些对象定义为虚拟对象,并将它们映射 到标准类,例如按钮或复选框。QuickTest 在运行会话过程中模拟虚拟对象上的用户操作。在测试结果中,虚拟对象显示时类似标准类对象。
欢迎光临!x5o3atestingsfwtrxAZ 下面我们还是通过一个例子来具体操作一下.这次选用LoadRuner自带的b/s架构的web例子,来录制脚本.(注:运行这个例子,同时把web server先给开起来.).这次只录制一个点击sign up(注册)的步骤.
欢迎光临!x5o3atestingsfwtrxAZ 录出脚本如下:
欢迎光临!x5o3atestingsfwtrxAZ Browser("Mercury Tours").Page("Mercury Tours").Frame("navbar").Image("signup").Click 45,12
欢迎光临!x5o3atestingsfwtrxAZ
欢迎光临!x5o3atestingsfwtrxAZ QTP把这个button对象识别成了Image(图片)对象,导致最后回放的时候,QTP不能完成Click操作,弹出报错信息.对于这个对象,我马上想到了做个虚拟的button对象来代替它.
欢迎光临!x5o3atestingsfwtrxAZ 下面是整个虚拟对象的制作过程:
欢迎光临!x5o3atestingsfwtrxAZ 1.选择“工具”>“虚拟对象”>“新建虚拟对象”。或者,也可以在虚拟对象管理器中,单击“新建”。将打开虚拟对象向导。单击“下一步”。
欢迎光临!x5o3atestingsfwtrxAZ 
欢迎光临!x5o3atestingsfwtrxAZ 2.选择要将您的虚拟对象映射到的标准类(这里有六种对象类供你选择,分别是object,button,table,list,check box,radio button).这里我们要映射一个button对象,所以选择button.单击"下一步"
欢迎光临!x5o3atestingsfwtrxAZ 
欢迎光临!x5o3atestingsfwtrxAZ 3.单击“标记对象”。选择你要做虚拟对象的区域,拖动鼠标.尽量能覆盖整个你想替代的对象.
欢迎光临!x5o3atestingsfwtrxAZ 
欢迎光临!x5o3atestingsfwtrxAZ 4.在“标识对象使用”框中,选择您希望 QTP 标识和映射虚拟对象的方式。
欢迎光临!x5o3atestingsfwtrxAZ 
欢迎光临!x5o3atestingsfwtrxAZ 如果您想要 QuickTest 标识所有出现的虚拟对象,请选择“Parent only”。
欢迎光临!x5o3atestingsfwtrxAZ 如果想要 QuickTest 仅标识一次出现的虚拟对象,请选择“Entire parent hierarchy"。
欢迎光临!x5o3atestingsfwtrxAZ 这里我们选择默认的“Parent only”。
欢迎光临!x5o3atestingsfwtrxAZ 5.指定虚拟对象的名称和集合。从集合列表中选择,或通过在“集合名”框中输入新名称来新建集合
欢迎光临!x5o3atestingsfwtrxAZ 
欢迎光临!x5o3atestingsfwtrxAZ 点击完成,整个虚拟对象就做好了.
欢迎光临!x5o3atestingsfwtrxAZ 虚拟对象做好后,保存在虚拟对象管理器中.我们可以通过虚拟对象管理器来删除或禁用虚拟对象定义.
欢迎光临!x5o3atestingsfwtrxAZ 选择“工具”>“虚拟对象”>“虚拟对象管理器”。将打开虚拟对象管理器。
欢迎光临!x5o3atestingsfwtrxAZ 
欢迎光临!x5o3atestingsfwtrxAZ 注意:如果希望 QuickTest 在录制时识别虚拟对象,请确保清除“选项”对话框的“常规”选项卡中的“录制时禁止识别虚拟对象”复选框。
欢迎光临!x5o3atestingsfwtrxAZ 接下来我们再来录制一遍对sign up的操作,录制代码如下:
欢迎光临!x5o3atestingsfwtrxAZ Browser("Mercury Tours").Page("Mercury Tours").Frame("navbar").VirtualButton("button").Click
欢迎光临!x5o3atestingsfwtrxAZ 在录制过程中值得注意的是,一定要点击到我们做好虚拟对象的范围内,这样QTP才能识别到这个虚拟对象.这里我们的虚拟对象识别成功.再次回放,QTP顺利的执行了脚本.
欢迎光临!x5o3atestingsfwtrxAZ 还有两点要注意的是:
欢迎光临!x5o3atestingsfwtrxAZ 1. 虚拟对象管理器中显示的虚拟对象集合存储在您的计算机中,而不是随包含虚拟对象步骤的测试或组件存储。这意味着如果您在测试或组件步骤中使用虚拟对象,则 仅当在包含正确的虚拟对象定义的计算机中运行时,该对象在运行会话过程中才能被识别。要将您的虚拟对象集合定义复制到另一个计算机,请将您的 <QuickTest 安装文件夹>\dat\VoTemplate 文件夹的内容(或该文件夹中的单个 .vot 集合文件)复制到目标计算机上的相同文件夹中。
欢迎光临!x5o3atestingsfwtrxAZ 2.仅当录制和运行测试或组件时,才能使用虚拟对象。您不能在虚拟对象上插入任何类型的检查点,也不能使用“对象探测器”来查看其属性。欢迎光临! |