优点:
不必购买昂贵的Addin即可识别相应的控件,并进行测试脚本的录制和回放;
可以自定义识别大部分的常用控件,而且可以保存下来供长期使用;
缺点:
应用程序中控件的位置是固定的,不能随着窗口或分辨率的变化而变化;
一个窗口中不能有两个同类的控件位置相同;
部分控件还是不能识别;
虽然有不少缺点,但总算可以不必购买昂贵的Addin就录制和回放大部分的自动测试脚本了。
以下以Delphi中的TEdit控件为例,进行说明。
步骤:
第一部分 如何识别Delphi控件
查看WinRunner本身的识别情况。
1.1 运行WinRunner,打开菜单【Tools】-【GUY Spy】,进入GUI Spy窗口;
1.2 点击“Spy”按钮,在要识别的控件(TEdit)上点击左键,GUY
Spy窗口中显示控件的属性,如下图:
1.3 我们可以看到GUI Spy识别不出TEdit控件的类,而是认为它是一个Object;
增加新的类
2.1 推出GUI Spy后,打开【Tools】-【GUI Map Configuration】,进入“GUI Map Configuration”窗口,如图:
2.2 点击“Add”按钮,出现“Add Class”窗口;
2.3 点击手形按钮,然后将光标移到指定的控件上点击左键,然后点击“OK”按钮,返回“GUI Map Configuration”窗口,窗口中增加了新增的Class;
2.4 选中刚刚增加的Class(TEdit),点击“Configure”按钮,进入“Configure Class”窗口;
2.5 选择“Mapped to Class”为该对象所继承自的Class(Edit),选择“Available”中的x属性,点击“Obligatory”下的“Insert”按钮,增加x属性,同样增加y属性;
2.6 点击“OK”按钮,返回“GUI Map Configuration”窗口,再点击“OK”按钮,返回到WinRunner窗口;
重新用GUI Spy识别TEdit对象,发现识别出来的Recorded属性中Class为Edit,位置也记录下来,而All
Standard属性中有了Value属性,这是测试中经常用到的。
可以用同样的方法将其他控件的类增加,以便测试时能够正确识别和回放。
第一部分的内容就讲完了,我想一些看了的朋友已经迫不及待地在制作其他控件的类了吧!不过马上就会有人说:“怎么保存我制作的内容呀!我重新运行WinRunner时这些内容就不在了,如果每次都要这样的话,那有什么用呀!”
不要急,在第二部分,我将要讲到如何将这些类做成能够永久识别的内容。
第二部分 制作永久识别的内容
在第一部分中我说到了如何识别Delphi控件,可是不能保存。其实,第一部分的主要目的是要让大家知道该怎么识别Delphi控件,在第二部分,我将向大家说明如何将这些类做成能够永久识别的内容。以下是具体的步骤:
在第一部分的步骤 2.5,添加好属性后,我们可以看到在窗口下方的“Gererated TSL
Script”框中有几行脚本,这就是让WinRunner能够正确识别控件的关键地方了,我们先把这三句脚本的前面两句Copy下来(干什么用?先别急,会告诉你的!);
然后,我们打开WinRunner的安装目录,在“lib\vbinit”这个子目录下面,我们可以看到一个名为“script”的文件,用UltraEdit编辑这个文件,可以看到文件中有很多的脚本,这就是第二部分的关键所在了;
找到以下两句话:
#VB objects supprt
#OCXs that are mapped can be found in 'oleinit'然后将我们刚才Copy的两句脚本粘贴在这两句话的前面,保存;
重新运行WinRunner,启动时加载 VB 的 Addin ,然后选择用 GUY Spy 再对控件进行识别,怎么样?可以正确识别控件了吧!再用第一部分的方法,将各种控件的类增加,然后将“Gererated
TSL Script”框中的前两行脚本 Copy 下来粘贴到这个文件中;
编辑并保存好这个文件之后,还有一个注意事项就是:运行WinRunner时,要加载 VB 的 Addin。当然,你愿意将脚本保存到
PB 的script文件中,然后加载PB的Addin,我也是没办法的咯!
好了!方法已经讲完了,希望能够对大家有所帮助,在节省银子的同时能够好好学习、利用WinRunner这个强大的功能测试工具。
|