• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试工具Winrunner中的脚本和函数调用

发布: 2010-1-19 16:03 | 作者: 网络转载 | 来源: 领测软件测试 | 查看: 57次 | 进入软件测试论坛讨论

领测软件测试网

软件测试工具Winrunner中的脚本和函数调用

Winrunner与Robot不同,它的每一个脚本并不是以函数(Function)或子程序(Sub)来圈定的,就是说脚本从头到尾都是录制操作生成的语句,没有头和尾的具体划分,对于脚本和函数的调用方式与Robot有很大不同。

        Robot对脚本的调用或者使用Callscrīpt,或者使用Call,一个是不需要传递参数的调用,纯粹是脚本调脚本,另一个则是对脚本中函数(Function)或子程序(Sub)的调用,可以传递参数(具体见我写的关于Robot函数调用的文章)。那么Winrunner中脚本和函数是又怎样调用的呢?下面我就WR8.2版本中调用的方法详细的说明一下。

        脚本的模块化是应该始终坚持的一个方向,在WR8.2中我同样希望建立一个main脚本和若干个子脚本。但其中我们会涉及到如下几个不同的调用方式:

        1.只是调用另一个脚本,不传递参数,需要一个脚本的返回值

        2.调用另一个脚本,传递参数并需要多个脚本的返回值

        3.调用另一个脚本中的函数,需要多个函数中的返回值

        4.调用另一个脚本,给这个脚本传递参数,并根据参数判断执行脚本中的函数,需要函数的返回值

        举一个最简单的例子,演示不同的情况。

        第一种情况:只是调用另一个脚本,不传递参数。

        新建一个主脚本:main,里面做GUI文件加载和开启记事本程序:

        #############################################################################

         GUI_close_all();
        if (GUI_load(".\\notepad.gui")!=0)
        {
         report_msg("gui load error");
        }
        else
        {
         report_msg("gui load ok");
        }
         if (invoke_application("c:\\windows\\system32\\notepad.exe","","",SW_SHOW)!=0)
         {
          report_msg("notepad error");
         }
         else
         {
          report_msg("notepad ok");
         }
        re1 = call ".\\notepadinput"();

        记住call函数的使用句式,给出相对路径下的子脚本名称,括号中不需要传递参数,re1将得到脚本notepadinput的返回值,如果不想取得返回值的话则只用call即可。

        ############################################################################

        新建一个子脚本:notepadinput,录制对记事本的输入:

          set_window ("无标题 - 记事本", 1);
         edit_set_insert_pos ("Edit", 0, 0);
         obj_type ("Edit","123");
         obj_type ("Edit","<kReturn>");
         edit_get_text("Edit",text);
         treturn text;

        #脚本的返回语句是treturn

        可以看到上面的这个例子是最简单的一个种调用,子脚本中都是录制生成的语句(没有开头和结尾的圈定,请与Robot对比),最后一个treturn语句是脚本的返回值。

        第二种情况:调用另一个脚本,传递参数并需要多个脚本的返回值

        对脚本进行参数的传递和返回需要在脚本属性中进行设置,具体操作是新建一个子脚本notepadinput在File-〉Test properties 在弹出的提示框中选择Parameters页签,这里可以设置这个脚本中的传入参数和传出参数。我们在“input parameters”中新建两个参数:notepadinput1,notepadinput2(最好给出描述),在“output parameters”中新建两个参数:result1,result2。保存设置并推出,接下来开始对主脚本main和子脚本notepadinput进行编辑。

        主脚本:main

        ###########################################################################

        GUI_close_all();
        if (GUI_load(".\\notepad.gui")!=0)
        {
         report_msg("gui load error");
        }
        else
        {
         report_msg("gui load ok");
        }

         if (invoke_application("c:\\windows\\system32\\notepad.exe","","",SW_SHOW)!=0)
         {
          report_msg("notepad error");
         }
         else
         {
          report_msg("notepad ok");
         }

        re1 = call ".\\notepadinputscrīpt"(1,2,result1,result2);    #这里一定要写上result1,result2

        pause (result1);
        pause (result2);

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: winrunner WinRunner Winrunner 工具 函数 脚本 软件测试

31/3123>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网