每天2个Loadrunner 函数 (2)

  今天要学习的2个lr 函数 分别是:

  1. lr_abort( )

    函数原型void lr_abort ()

    参数:无

    返回值:无

    作用:终止脚本的运行

  2. lr_advance_param

    函数原型:int lr_advance_param(const char * param)

    参数:char * param 参数名称

    返回值:0 (成功) -1 (失败)

    作用:进展到下一个可用的参数值

 

  以上2个函数的例子代码如下:

  lr_abort:

  

 1 Action()
 2 {
 3     int status;
 4     status = web_url ("abort",
 5                       "URL=http://localhost/test.html",
 6                       "RecContentType=text/html",
 7                       LAST);
 8     if(status == LR_PASS)
 9     {
10           lr_abort();
11           lr_output_message("the funtion is abort");
12     }
13 
14     lr_output_message("the funtion is abort1");
15 
16     return 0;
17 }

执行结果如下:

  Starting action Action.
  Action.c(4): web_url("abort") was successful, 126 body bytes, 223 header bytes   [MsgId: MMSG-26386]
  Abort was called from an action.
  Ending Vuser...

  lr_abort 函数终止了脚本的运行,所以后边的2个lr_output_menssage 的方法没有得到执行。。。

 

  lr_advance_param

代码如下:

  想了半天,也没想到好的例子,先借用帮助里的吧

  

 1 lr_output_message("Iteration %s, Param1 %s, Param2 %s", 
 2 
 3     lr_eval_string("{NewParam}"), 
 4 
 5     lr_eval_string("{Param1}"), 
 6 
 7     lr_eval_string("{Param2}")); 
 8 
 9     lr_advance_param("Param1"); 
10 
11     lr_output_message("Iteration %s, Param1 %s, Param2 %s", 
12 
13     lr_eval_string("{NewParam}"), 
14 
15     lr_eval_string("{Param1}"), 
16 
17     lr_eval_string("{Param2}"));

循环2次后的结果是:
 

Action.c(14): the funtion is abort1
Action.c(17): Iteration 1, Param1 P1_a, Param2 P2_a
Action.c(27): Iteration 1, Param1 P1_b, Param2 P2_b
Ending action Action.
Ending iteration 1.
Starting iteration 2.
Starting action Action.
Action.c(4): web_url("abort") was successful, 126 body bytes, 223 header bytes   [MsgId: MMSG-26386]
Action.c(14): the funtion is abort1
Action.c(17): Iteration 2, Param1 P1_c, Param2 P2_c
Action.c(27): Iteration 2, Param1 P1_d, Param2 P2_d

  

  

posted on 2012-07-09 09:53  laomaoxiha  阅读(369)  评论(0编辑  收藏  举报