zoukankan      html  css  js  c++  java
  • LoadRunner脚本编写

    引言:针对接口进行脚本编写,解决录制脚本的局限。

    第一步:打开LR,选择协议Web Services。

    第二步:在action里进行脚本编写。

    登陆:

     1     int HttpRetCode_login,HttpRetCode_add;//定义两个变量,必须放在最前面。
     2 
     3     //*******************用例1*******************
     4     
     5     web_reg_save_param("result_login","LB=","RB=","Search=headers",LAST);  //从响应数据获取指定内容
     6 
     7     //post请求使用web_submit_data
     8     web_submit_data("web_submit_data",
     9         "Action=http://*******/login",
    10         "Method=POST",
    11         "TargetFrame=",
    12         "Referer=",
    13         "Mode=HTTP",
    14          ITEMDATA,
    15         "Name=username", "Value=**", ENDITEM,
    16         "Name=password", "Value=****", ENDITEM,
    17         LAST);
    18 
    19     //字符串编码转换
    20     //lr_convert_string_encoding(lr_eval_string("{result_login}"),LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"resultutf8");
    21     lr_convert_string_encoding(lr_eval_string("{result_login}"),"utf-8",NULL,"resultutf8");
    22 
    23     //获取参数resultutf8的值,并打印出来。
    24     lr_output_message("# 响应体的内容:
     %s",lr_eval_string("{resultutf8}"));
    25 
    26     HttpRetCode_login=web_get_int_property(HTTP_INFO_RETURN_CODE); //获取http响应代码
    27 
    28     //判断
    29     if(HttpRetCode_login==200)
    30 
    31     {    
    32         lr_output_message("
    ");
    33          lr_output_message("******** 成功登陆会员系统! ********");
    34 
    35     }
    36 
    37     else
    38 
    39     {    
    40 
    41          lr_output_message("登陆失败!");
    42 
    43     }
    44     

    提交数据:

     1 //等待时间
     2     lr_think_time(3);
     3 
     4 
     5     //*******************用例2*******************
     6 
     7     web_reg_save_param("result_addcard","LB=","RB=","Search=Body",LAST);
     8     //生成随机参数
     9     lr_output_message("",lr_save_string(lr_eval_string("{cardNo}"),"name"));
    10     lr_output_message("*****参数:%s********",lr_eval_string("{name}"));
    11 
    12     //请求中文参数转码
    13     lr_convert_string_encoding(lr_eval_string("储值卡"),LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"categoryName_value");
    14     lr_save_string(lr_eval_string("{categoryName_value}"),"categoryName_value");
    15     
    16     web_submit_data("web_submit_data",
    17         "Action=http://*******/crm/card/add",
    18         "Method=POST",
    19         "TargetFrame=",
    20         "Referer=",
    21         "Mode=HTTP",
    22 
    23         ITEMDATA,
    24         "Name=operate", "Value=single", ENDITEM,
    25         "Name=categoryName", "Value={categoryName_value}", ENDITEM,
    26         "Name=cardDiscountFloor2", "Value=", ENDITEM,
    27         "Name=cardDiscountFloor3", "Value=0", ENDITEM,
    28         "Name=isGroup", "Value=0", ENDITEM,
    29         "Name=cardNo", "Value={name}", ENDITEM,
    30         "Name=cardAttr", "Value=1", ENDITEM,
    31         "Name=categoryId", "Value=4", ENDITEM,
    32         "Name=originalPrice", "Value=30000.00", ENDITEM,
    33         "Name=realPrice", "Value=30000.00", ENDITEM,
    34         "Name=itemTimes", "Value=1", ENDITEM,
    35         LAST);
    36     lr_convert_string_encoding(lr_eval_string("{result_addcard}"),LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"result_addcardtutf8");
    37     lr_output_message("# 响应体的内容:
     %s",lr_eval_string("{result_addcardtutf8}"));
    38 
    39     lr_output_message("*******新增的会员卡卡号是 = %s ", lr_eval_string("{name}"));
    40 
    41     HttpRetCode_add=web_get_int_property(HTTP_INFO_RETURN_CODE);
    42 
    43     if(HttpRetCode_add==200)
    44         {    
    45 
    46         lr_output_message("新增会员卡成功!");
    47 
    48     }
    49 
    50     else
    51         {    
    52 
    53         lr_output_message("新增会员卡失败!");
    54 
    55     }

    查询提交的数据:

     1     //*******************用例3*******************
     2 
     3     web_reg_save_param("result_search","LB=","RB=","Search=Body",LAST);
     4 
     5     web_submit_data("web_submit_data",
     6        "Action=http://********/api/crm/v1/getCrmCardList",
     7        "Method=POST",
     8        "TargetFrame=",
     9        "Referer=",
    10        "Mode=HTTP",
    11        ITEMDATA,
    12        "Name=cardNo", "Value={name}", ENDITEM,
    13        "Name=cardAttr", "Value=", ENDITEM,
    14         "Name=cardStatus", "Value=", ENDITEM,
    15         "Name=isPresent", "Value=", ENDITEM,
    16         "Name=phone", "Value=", ENDITEM,
    17         "Name=name", "Value=", ENDITEM,
    18         "Name=order","Value=desc",ENDITEM,
    19        LAST);
    20     lr_convert_string_encoding(lr_eval_string("{result_search}"),LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"result_search");
    21     lr_output_message("# 响应体的内容:
     %s",lr_eval_string("{result_search}"));
  • 相关阅读:
    springMVC学习--RESTful支持
    Java中的值传递和引用传递
    SpringMVC学习--json
    SpringMVC学习--文件上传
    SpringMVC学习--异常处理器
    SpringMVC学习--数据回显
    SpringMVC学习--校验
    SpringMVC学习--参数绑定
    SpringMVC学习--功能完善
    SpringMVC学习--springmvc和mybatis整合
  • 原文地址:https://www.cnblogs.com/liudinglong/p/10768271.html
Copyright © 2011-2022 走看看