Ratoinal Robot是一种可扩展、灵活的功能测试工具,它是Rational Suites下的一个组件,对于比较熟悉它的测试人员可以修改测试脚本,改进测试的深度。Ratoinal Robot为菜单、列表、字母数字字符及位图等对象提供了测试用例。具体来说,它可以做到以下测试:
(1)基于GUI的功能测试:它可以记录用户软件的操作,将这些动作转换为脚本(脚本是不区分大小写的),然后通过回放脚本,来验证软件的功能是否正确。
(2)对网络应用程序进行性能测试:它可以模拟很多虚拟用户来应用网络应用程序,从而判断程序性能是否符合要求。当然,这也是通过录制和回放脚本来办到的。
根据功能的不同,Robot脚本也可以分为两类SQA Basic脚本与VU脚本。这两种脚本分别对应以上的基于GUI功能测试与网络应用程序的性能测试。它们不能互相换用,而且,不仅它们的用途不同,语法也大相径庭。SQA Basic用的是Basic语法,而VU脚本用的是C语言的语法。
目前达梦数据库客户端的功能采用Ratoinal Robot进行测试。对数据库客户端的操作、在需要进行对比验证的时候设置验证点,它都会记录下来并转换成SQA Basic脚本。当进行测试时,可以使用Ratoinal Robot的脚本的回放功能来达到自动化测试的目的,验证软件的功能是否正确。下面简单介绍一下Ratoinal Robot在测试达梦数据库的客户端当中的应用。
新建工程
第一次使用Ratoinal Robot时,它的Project项是空的,也就是说当前没有项目可用,需要进入到Rational Suites的另一个组件Rational Administrator中去新建一个项目,在Rational Administrator中选择File->New Project,可以打开新建工程的向导,根据向导可以建一个自己命名的项目,设置此项目的密码,密码可以为空。之后再次打开它时就可以使用已有的项目与用户了。
录制脚本
选择菜单Record GUI或是点击工具栏上的GUI图标按扭,可打开录制脚本对话框,在对话框中输入脚本名称,可以按测试步骤对数据库客户端进行操作,当前对电脑的任何操作都可以被录制进来,所以在测试的过程中尽量不要运行一些自动弹出窗口的软件,以免影响测试的脚本的正确性或增加修改脚本的工作量。录制脚本的过程当中Rational Robot在最高层会有一个小窗口,此窗口有四个图标按钮:pause Recording(暂停录制)、stop Recording(结束录制)、open Robot Window(打开Robot窗口)、Display GUI Insert Toolbar(显示),使用pause Recording时,Robot事实上并没有退出,当前所做的任何操作也不会被录制成脚本;使用stop Recording时结束脚本录制;open Robot Window打开Robot窗口可以看到刚才录制的脚本,但打开Robot窗口的操作不录制成脚本;Display GUI Insert Toolbar会打开插入GUI验证点工具栏,需要作对比验证的时候可以使用这个图标按钮。
修改脚本
直接录制的脚本在实际中很少具有实用价值,一般都会对其进行或多或少的修改,如上面一个步骤录制的脚本如果放到另外一台机器上去运行,很有可能就会现在这个脚本跟本无法执行成功。如,达梦数据库安装的目录是可修改的,如果在录制脚本的过程中涉及到目录的时候,脚本中会出现绝对路径,在另外一台机器上安装达梦数据库的目录不同时,执行脚本就会不成功。如下例是一个录制的脚本,看看有哪些地方需要修改后才能到其它的机器上运行成功,下面的例子就是打开达梦数据库的客户端工具ISQL,登录数据库服务器,然后打开达梦数据库安装目录下的一个文件,由于下面需要多次使用到达梦数据库的安装路径,而且安装数据库时路径是可更改的,用一个常量来定义这个路径会比很多次书写这个路径来得方便,且修改起来工作量比较小:
以下是引用片段:
‘注释语句的语法是在要注释的语句前面加一个’
Sub Main
Dim Result As Integer
‘在这里定义一个常量
‘Const dm_path=”e:\dmdbms”
'Initially Recorded: 2007-12-13 15:46:20
'Script Name: test
‘一般情况下打开可执行文件不要使用下面这种点击菜单的方式来
Window SetContext, "Class=Shell_TrayWnd", ""
PushButton Click, "Text=开始"
Window SetContext, "Caption=「开始」菜单", ""
PushButton Click, "Text=所有程序(P)"
Window SetContext, "Class=BaseBar;Level=2", ""
Toolbar Click, "ObjectIndex=1;\;ItemID=36", "Coords=118,10"
‘打开可执行文件采用STARTAPPLICATION(可执行文件路径与名称),这样一个语句就可以打开需要的文件了,那么中间的一段代码就可以用一个语句替换了:startapplication(dm_path+”\dm\dmtools\bin\isql.exe”)
Window SetContext, "Class=BaseBar", ""
Toolbar Click, "ObjectIndex=1;\;ItemText=交互式工具 ISQL", "Coords=101,16"
Window SetContext, "Caption=DM交互式工具", ""
TreeView DblClick, "ObjectIndex=2;\;ItemText=达梦服务器组->本地服务器", ""
Window SetContext, "Caption=登录", ""
EditBox Left_Drag, "Label=用户名(U):", "Coords=65,11,-60,-7"
InputKeys "^c"
EditBox Click, "Label=口令(W):", "Coords=44,8"
InputKeys "^v"
PushButton Click, "Text=确定"
Window SetContext, "Caption=DM交互式工具", ""
MenuSelect "文件(F)->打开(O)..."
Window SetContext, "Caption=打开", ""