loadrunner(1)----http POST三种请求格式的脚本

本篇文章主要针对POST请求的三种数据请求格式,组织不同的脚本,较为基础,入手教简单

(1)、application/x-www-form-urlencoded 键值对

(2)、multipart/form-data 表单

(3)、application/json Json串

注意:loadrunner参数中的引号,需要自己加"\"。

1. application/x-www-form-urlencoded 键值对

[plain]
  1. Action()  
  2. {  
  3.     lr_start_transaction("checkPerson");  
  4.     /* 注册获取返回参数,该方法可以配合打印返回数据,检测数据内容 */  
  5.     web_reg_save_param("Para",  
  6.                        "LB=",  
  7.                        "RB=",  
  8.                        LAST);  
  9.   
  10.     /* 注册断言: Text=断言内容 */  
  11.     /* 该方法会判断后面的web请求方法的返回值 */  
  12.     web_reg_find("Text=成功",  
  13.              LAST);  
  14.   
  15.     /* 汉字进行UTF-8编码 */  
  16.     lr_convert_string_encoding("需要进行UTF-8加密的中文字符串",LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"result");  
  17.   
  18.     /* 向后面的web请求函数增加请求头 */  
  19.     /* 如果web请求方法中已经设置了相同的头,则优先使用web请求方法中的头,例如web请求方法中的EncType参数,对应请求投中的Content-Type。由于下面的方法已经设置了EncType参数,所以这里的设置并没有什么X用 */  
  20.     /* 表单直接使用方法自带参数,键值对和json建议使用该方法 */  
  21.     web_add_header("Content-Type",  
  22.                "application/x-www-form-urlencoded; charset=utf-8");  
  23.   
  24.     /* 主要针对form表单和键值对两种格式的web请求 */  
  25.     web_submit_data("checkPerson",  
  26.         "Action=http://130.1.11.105:9080/ibis/faceService/checkPerson",  
  27.         "Method=POST",  
  28.         /* 该方法支持常见的两种请求数据格式 */  
  29.         /* (1)"EncType=multipart/form-data"。form表单提交数据 */  
  30.         /* (1)"EncType=application/x-www-form-urlencoded"。默认使用键值对提交数据 */  
  31.         //"EncType=",  
  32.         "TargetFrame=",  
  33.         "Referer=",  
  34.         ITEMDATA,  
  35.         "Name=Name1", "Value=Value1", ENDITEM,  
  36.         "Name=Name2", "Value=Value2", ENDITEM,  
  37.         LAST);  
  38.   
  39.     /* 打印相应结果 */  
  40.     /* lr_eval_string("{result}") 使用loadrunner引用外部函数,只有这样才能取出上面web_reg_save_param方法的返回值 */  
  41.     lr_log_message(lr_eval_string("{result}"));  
  42.   
  43.     lr_end_transaction("checkPerson", LR_AUTO);  
  44.   
  45.     return 0;  
  46. }  


2. multipart/form-data 表单

[plain]
  1. Action()  
  2. {  
  3.     lr_start_transaction("checkPerson");  
  4.     /* 注册获取返回参数,该方法可以配合打印返回数据,检测数据内容 */  
  5.     web_reg_save_param("Para",  
  6.                        "LB=",  
  7.                        "RB=",  
  8.                        LAST);  
  9.   
  10.     /* 注册断言: Text=断言内容 */  
  11.     /* 该方法会判断后面的web请求方法的返回值 */  
  12.     web_reg_find("Text=成功",  
  13.              LAST);  
  14.   
  15.     /* 汉字进行UTF-8编码 */  
  16.     lr_convert_string_encoding("需要进行UTF-8加密的中文字符串",LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"result");  
  17.   
  18.     /* 向后面的web请求函数增加请求头 */  
  19.     /* 如果web请求方法中已经设置了相同的头,则优先使用web请求方法中的头,例如web请求方法中的EncType参数,对应请求投中的Content-Type。由于下面的方法已经设置了EncType参数,所以这里的设置并没有什么X用 */  
  20.     /* 表单直接使用方法自带参数,键值对和json建议使用该方法 */  
  21.     //web_add_header("Content-Type",  
  22.     //         "multipart/form-data; boundary = --------BORN3QKNRTS4; charset=UTF-8");  
  23.   
  24.     /* 主要针对form表单和键值对两种格式的web请求 */  
  25.     web_submit_data("checkPerson",  
  26.         "Action=http://130.1.11.105:9080/ibis/faceService/checkPerson",  
  27.         "Method=POST",  
  28.         /* 该方法支持常见的两种请求数据格式 */  
  29.         /* (1)"EncType=multipart/form-data"。form表单提交数据 */  
  30.         /* (1)"EncType="。默认使用键值对提交数据 */  
  31.         "EncType=multipart/form-data",  
  32.         "TargetFrame=",  
  33.         "Referer=",  
  34.         ITEMDATA,  
  35.         "Name=Name1", "Value=Value1", ENDITEM,  
  36.         "Name=Name2", "Value=Value2", ENDITEM,  
  37.         LAST);  
  38.   
  39.     /* 打印相应结果 */  
  40.     /* lr_eval_string("{result}") 使用loadrunner引用外部函数,只有这样才能取出上面web_reg_save_param方法的返回值 */  
  41.     lr_log_message(lr_eval_string("{result}"));  
  42.   
  43.     lr_end_transaction("checkPerson", LR_AUTO);  
  44.   
  45.     return 0;  
  46. }  

3.  application/json Json串
[plain]
  1. Action()  
  2. {  
  3.     lr_start_transaction("checkPerson");  
  4.     /* 注册获取返回参数,该方法可以配合打印返回数据,检测数据内容 */  
  5.     web_reg_save_param("Para",  
  6.                        "LB=",  
  7.                        "RB=",  
  8.                        LAST);  
  9.   
  10.     /* 注册断言: Text=断言内容 */  
  11.     /* 该方法会判断后面的web请求方法的返回值 */  
  12.     // web_reg_find("Text=成功",  
  13.     //       LAST);  
  14.   
  15.     /* 汉字进行UTF-8编码 */  
  16.     lr_convert_string_encoding("需要进行UTF-8加密的中文字符串",LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"result");  
  17.   
  18.     /* 向后面的web请求函数增加请求头 */  
  19.     /* 如果web请求方法中已经设置了相同的头,则优先使用web请求方法中的头,例如web请求方法中的EncType参数,对应请求投中的Content-Type。由于下面的方法已经设置了EncType参数,所以这里的设置并没有什么X用 */  
  20.     /* 表单直接使用方法自带参数,键值对和json建议使用该方法 */  
  21.     web_add_header("Content-Type",  
  22.                "application/json; charset=UTF-8");  
  23.   
  24.     /* 主要针对form表单和键值对两种格式的web请求 */  
  25.   
  26.     web_custom_request("web_custom_request",  
  27.         "URL=http://www.baidu.com",  
  28.         "Method=POST",  
  29.         "TargetFrame=",  
  30.         "Resource=0",  
  31.         "Referer=",  
  32.         "Mode=HTTP",  
  33.         /* json和键值对数据格式,建议使用web_add_header方法添加Content-Type头 */  
  34.         //"EncType=application/json",  
  35.         "Body={\"Name1\":\"Value1\",\"Name2\":\"Value2\"}",  
  36.         LAST);  
  37.   
  38.     /* 打印相应结果 */  
  39.     /* lr_eval_string("{result}") 使用loadrunner引用外部函数,只有这样才能取出上面web_reg_save_param方法的返回值 */  
  40.     lr_log_message(lr_eval_string("{result}"));  
  41.   
  42.     lr_end_transaction("checkPerson", LR_AUTO);  
  43.   
  44.   
  45.     return 0;  

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值