您的位置:首页 > 其它

loadruuner 脚本开发

2015-12-31 10:05 309 查看
第四部分:LoadRunner工具之VuGen脚本开发和参数化:

参数化:Unique+Each iteration+Abort Vuser

第五部分:LoadRunner VuGen脚本开发之关键技术关联详解

  //想知道循环有没有出错(定义一个变量记录循环次数)

  Action:

  插在Action前面    int iteration=1;

  插在事务结束后面    lr_output_message("执行到第 %d 次循环,使用的市场活动名为  %s",iterationno++,lr_eval_string("{name}"));

                          lr_output_message("使用的登录名为  %s",lr_eval_string("{username}"));

  插在事务开始后面 
   //关联函数  

 例:web_reg_save_param_ex( 

    "ParamName=CorrelationParaneter_1", 

    "LB=/> ,<span>", 

    "RB=</span", 

    "Ordinal=all", 

    SEARCH_FILTERS, 

    "Scope=body", 

    LAST); 

取随机数:

1. 随机地取CorrelationParameter_2_2到CorrelationParameter_2_7

2. 随机2到7:int randno=2;             -----插在Action后面

             randno=()%6+2;            -----插在事务结束前面

3. 随机参数  char statusparm[30];      -----插在Action后面 

             sprintf(statusparm,"{CorrelationParameter_2_%d}",randno);-----插在事务结束前面

4.取随机的参数元素值,然后保存到一个参数中

             lr_save_string(lr_eval_string(statusparm),"randnostauts");-----插在事务结束前面

为了调试//临时输出  

             lr_output_message("随机数为 %d",randno);

第六部分:LoadRunner VuGen脚本开发之关键技术关联特殊案例

         //定义一个随机数变量(19-24之间的值)

          int randno=19;

          char statusstring[40];

        //获取一个随机19到24的值

          randno=19+rand()%6;      -------插在事务结束前面

          spintf(statusstring,"{CorrelationParameter_1_%d}",randno);----插在事务结束前面

        //临时输出

          lr_output_message("随机参数传为 %d",lr_eval_string(statusstring));----插在事务结束前面

        //把一个字符串保存到一个参数

          lr_save_string(lr_eval_string(statusstring),"RandStatus");   ----插在事务结束前面

第七部分:LoadRunner VuGen脚本开发之一个完整脚本开发

        

//定义一个变量,用来记录循环次数

int iteration=1;  ----插在事务开始前面

//判断注册是否成功,如果失败则输入失败的注册用户名以及在哪次循环失败

if(atoi(lr_eval_string("{welcome_Count}"))>=1){                  ------welcome_Count是一个检查点文本计数

   lr_end_transaction("注册_提交", LR_PASS);//如果提交成功,设置事务状态为PASS

}else{

   lr_end_transaction("注册_提交", LR_FAIL);//如果提交失败,设置事务状态为FAIL

   lr_error_message("注册失败,注册的用户名为 %s",lr_eval_string("{username}"));

   lr_error_message("注册失败,在第 %d 次循环失败",iteration++);

}    

//插入集合点,模拟同时订票提交

lr_rendezvous("订票集合点"); ------插在事务订票开始之前

脚本注释说明

/*

作者:

版本:

版权:

修订记录:

功能: 

关键参数:username 

*/  

例子:

web_reg_find("Text=欢迎您",

      "SaveCount=欢迎您_Count",   -------SaveCount是保存计数意思

      LAST);

线程:一个vuser要1mb内存

-----------------------------------------------------------------------------------------------------

//判断注册是否成功,如果失败则输入失败的注册用户名以及在哪次循环失败

if(atoi(lr_eval_string("{welcome_Count}"))>=1){

     lr_output_message("log on successful");

     lr_output_message("使用的登录名为  %s",lr_eval_string("{username}"));

}else{
lr_error_message("log on failed");

    lr_error_message("注册失败,注册的用户名为 %s",iteration++,lr_eval_string("{username}"));

   //lr_error_message("注册失败,iteration++);

}   

//验证登录用户数是否成功

    if(atoi(lr_eval_string("{username}"))>=0){

     lr_output_message("log on successful");

     lr_output_message("使用的登录名为  %s",lr_eval_string("{username}"));

}else{
lr_error_message("log on failed");

    lr_error_message("注册失败,注册的用户名为 %s",lr_eval_string("{username}"));

   //lr_error_message("注册失败,iteration++);

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: