LoadRunner脚本信息函数

Jessica瑾妞

2017-01-05

脚本信息函数在实际中用的不是特别多,下面简单介绍几个常见函数的用法。

l lr_whoami

lr_whoami用来返回Vuser的ID、组名称、场景ID信息。例1-64的程序演示了lr_whoami函数的用法:首先定义两个整型变量id与scid、一个字符指针vuser_group,然后将这三个变量的地址作为参数传给lr_whoami函数。lr_whoami函数执行完成后这三个变量就会获得对应的内容。注意参数传递顺序应该是Vuser的ID、组名称、场景ID。

例1-64

int id, scid;
char *vuser_group;
lr_whoami(&id, &vuser_group, &scid);
lr_errror_message( "Group: %s, vuser id: %d, scenario id  %d", vuser_group, id, scid);
l lr_get_host_name与lr_get_master_host_name
lr_get_host_name函数返回运行脚本的Generator的主机名称,用法如例1-65所示:

例1-65

char * my_host;
my_host = lr_get_host_name( );
lr_output_message("my_host :%s", my_host);
lr_get_master_host_name函数返回当前运行Controller的主机名称,用法如例1-66所示:

例1-66

char * controller_host;
controller_host =  lr_get_master_host_name( );
lr_output_message("controller_host :%s", controller_host);

l lr_get_vuser_ip

当开启IP spoofing功能后,每个Vuser可以使用不同的IP(假设Generator上IP数量大于等于当前运行的Vuser数量)来对目标服务器加压。这时可以用lr_get_vuser_ip函数来返回当前Vuser的IP。如果未开启IP spoofing功能,则脚本运行时lr_get_vuser_ip将会返回(null),而每个Generator上运行的Vuser将会使用同一个IP来对目标服务器加压。

注意:在VuGen中运行脚本时,lr_get_vuser_ip将会返回(null)。

lr_get_vuser_ip的用法如例1-67所示:

例1-67

char *ip;
ip = lr_get_vuser_ip();
if (ip)
      lr_output_message("The IP address is %s", ip);
else
      lr_output_message("IP spoofing disabled");

l lr_start_timer与lr_end_timer

lr_start_timer 与lr_end_timer两个函数需要组合在一起使用:前者用来启动一个计时器,同时返回计时器的句柄;后者用来使指定的计时器停止计时,并返回计时结果。计时单位为秒,计时结果可以精确到小数点后6位。

两个函数的语法结构如下:

   merc_timer_handle_t lr_start_timer  ();
   double lr_end_timer  (merc_timer_handle_t timer);

例1-68演示了两个函数的用法:首先定义了双精度的变量time_elapsed,用来保存计时结果;然后定义了merc_timer_handle_t类型的句柄timer,用来表示指向lr_start_timer()返回的计时器;接下来执行搜索操作,最后将会输出lr_start_timer与lr_end_timer之间代码即文本检查点函数web_find的执行时间time_elapsed。

例1-68

Action()
{
       double time_elapsed;
       merc_timer_handle_t  timer;      
       web_url("s",  
              "URL=http://www.baidu.cn/s?wd=LoadRunner",  
              "Resource=0",  
              "RecContentType=text/html",  
              "Referer=http://www.baidu.cn/",  
              "Snapshot=t2.inf",  
              "Mode=HTML",  
              EXTRARES,
              "Url=http://s.baidu.com/w.gif?"
               "path=http://www.baidu.cn/s?wd=LoadRunner&t=1220948145240",
                "Referer=http://www.baidu.cn/s?wd=LoadRunner",  ENDITEM,
              LAST);
timer = lr_start_timer();
       web_find("web_find",
              "What=用时",
              LAST);
    time_elapsed =  lr_end_timer(timer);
    lr_error_message("Find  Time= %f",time_elapsed);
       return 0;
}

读者评论

相关博文

  • LoadRunner错误处理函数

    LoadRunner错误处理函数

    陈绍英 2017-05-23

    在脚本的Run-time Settings中,可以设置在脚本运行过程中发生错误的处理方式。进入到Run-time Settings中,切换到Miscellaneous标签页,可以看到Error Handing的第一个设置项:Contin...

    陈绍英 2017-05-23
    340 0 1 0
  • 深入接下LoadRunner的File类型参数9种取值方式

    深入接下LoadRunner的File类型参数9种取值方式

    陈绍英 2017-05-02

    参数取值作为性能测试人员必须掌握透,但实际中深究者很少,我在面试过程中多数人都不清楚。本文将把这个话题讲透彻,分享给大家。 很多测试工程师尽管能够使用File类型参数,但往往不知道在Controller中各个Vuser的具体取值过程。但...

    陈绍英 2017-05-02
    1286 0 1 0
  • 了解智能一体化

    了解智能一体化

    陈绍英 2017-04-21

    了解智能一体化测试平台 智能一体化测试平台是为支持智能一体化测试理论而开发的平台,这个平台主要面向后台系统的服务/接口测试。借助这个平台,开发测试人员进行服务/接口测试时可以将工作重心集中在测试案例设计与管理上,测试执行与分析主要交...

    陈绍英 2017-04-21
    1105 0 0 0