Chinaunix首页 | 论坛 | 博客
  • 博客访问: 734696
  • 博文数量: 769
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 4985
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 16:37
文章分类

全部博文(769)

文章存档

2011年(1)

2008年(768)

我的朋友

分类:

2008-10-15 16:44:38

        在成功安装和建立项目以后,就可以利用testmanager和robot进行软件了。下面以一个windows自带的计算器测试例子,展示rational的功能。

        1. 启动robot,登录窗口默认用户名是admin,输入在建立测试项目时指定的密码(默认为空),即可进入robot主界面;
        2. 点击工具栏上的GUI按钮,录制GUI脚本,在窗口中输入脚本名称;
        3. 在GUI Record工具栏上点击第四个按钮,在GUI Inset工具栏点击Start Application按钮,点击browse…按钮,选择计算器程序;
        4. 从键盘输入1+1=,然后在GUI Record工具栏上点击第四个按钮,在GUI Inset工具栏点击Alphanumeric校验点,选择第三项Numeric Equivalence;
        5. 关闭计算器,点击GUI Record工具栏上的STOP按钮,完成脚本的录制;

        录制完的脚本:

         Sub Main
            Dim Result As Integer
            'Initially Recorded: 2006-12-23  15:22:57
            'scrīpt Name: test-calc
            StartApplication "c:\windows\system32\calc.exe"
            Window SetContext, "Caption=计算器", ""
            PushButton Click, "Text=7"
            PushButton Click, "Text=+"
            PushButton Click, "Text=6"
            PushButton Click, "Text=="
        Result = EditBoxVP (CompareNumeric, "ObjectIndex=1", "VP=Alphanumeric;Value=130000")
            Window CloseWin, "", ""
        End Sub

        这个脚本并不能正确回放,需要将
         Result = EditBoxVP (CompareNumeric, "ObjectIndex=1", "VP=Alphanumeric;Value=130000")

        改为:

             Result = EditBoxVP (CompareNumeric, "ObjectIndex=1", "VP=Alphanumeric;Value=13")

        这样就可以点击工具栏上的回放按钮进行回放。

        (注:这个是在WINDOWSXP下运行后的)

             这个脚本只能验证一组数据,并不能体现出自动化测试带来的便利。需要对脚本进行手工修改,在脚本加入循环结构和数据池(DATAPOOL),这样就可以实现一个脚本测试大量的数据,脚本易于维护而且功能强大。

        修改后的脚本如下:

         '$Include "sqautil.sbh" //datapool必须写的第一句话
        Sub Main
            Dim Result As Integer
            dim m as string
            dim x as integer
            dim n as string
            dim sum as variant
            dim dp as long
            'Initially Recorded: 2006-12-23  15:22:57
            'scrīpt Name: test-calc
            StartApplication "c:\windows\system32\calc.exe"
            dp=SQADatapoolOpen("Book1")
            for x=1 to 5
            Call SQADatapoolFetch(dp)
            Call SQADatapoolValue(dp,1,m)
            Call SQADatapoolValue(dp,2,n)
            Call SQADatapoolValue(dp,3,sum)
            Window SetContext, "Caption=计算器", ""
            InputKeys m &"{+}"& n &"{ENTER}"
        注释:/*只点与上面的区别:
            PushButton Click, "Text=7"
            PushButton Click, "Text=+"
            PushButton Click, "Text=6"
            PushButton Click, "Text==" */
            Result = EditBoxVP (CompareNumeric, "ObjectIndex=1", "VP=Alphanumeric;  Value="& sum &"")
            Window ResetTestContext, "", ""
            if Result<>1 then
                 SQALogMessage sqaFail, "测试失败", "设计测试失败"
               else
                  SQALogMessage sqaPass, "测试成功", ""
            end if
            msgbox Result //提示信息
            next
            Call SQADatapoolClose(dp)
            Window CloseWin, "", ""
        End Sub

        注:SQADatapoolOpen("Book1"),Book1为数据池(DATAPOOL)名称,需要在testmanager中手工创建。
           (三列最少五行因为:FOR X=1 TO  5 )
        **经过简单的编辑后,测试时只需要将测试数据导入数据池(DATAPOOL)回放脚本即可,通过查看测试log检查哪些错误,在开始测试时就可以使用,而不是等到回归,也不是手工过程的简单重复。在测试之前,可以先准备好测试数据备用。

【责编:michael】

--------------------next---------------------

阅读(320) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~