通过web_custom_request编写接口压测脚本

步骤

  • 新建HTTP协议脚本
  • 声明变量(C语言要在最开始声明)
  • 参数化返回值(在web请求前注册)
  • 描述请求
  • 对请求结果进行断言
  • 对响应数据进行处理(转码及打印)
initData_Action()
{

    // 定义请求返回码变量
    int HttpRetCode;

    char *url_request = "http://xxxx/xxxx/initData";

    char *body_request = 
        "{"
        "\"body\":{"
            "\"dataDicVer\":\"\","
            "\"paramVer\":\"\","
            "\"appVer\":\"\","
            "\"bannerVer\":\"\""
        "},"
        "\"header\":{"
            "\"appType\":\"1\","
            "\"appVersion\":\"2.1.2\","
            "\"cardCode\":\"\","
            "\"channelId\":\"xxxxx\","
            "\"deviceId\":\"xxxxxx\","
            "\"sessionId\":\"\""
        "}}";

    lr_save_string(url_request,"URL_REQUEST");

    lr_save_string(body_request,"BODY_REQUEST");

    lr_start_transaction("initData_Action");

    // 返回值参数化处理,取所有响应数据
    web_reg_save_param_ex("ParamName=getInitData",
                          "LB=",
                          "RB=",
                          LAST);

    web_custom_request("initData",
                       "URL={URL_REQUEST}",
                       "Method=POST",
                       "Referer=",
                       "EncType=application/json",
                       "RecContentType=application/json",
                       "Body={BODY_REQUEST}",
                       "Mode=HTTP",
                        LAST);

    HttpRetCode = web_get_int_property(HTTP_INFO_RETURN_CODE);

    if (HttpRetCode == 200){

    lr_log_message(">>> success <<<");

    // 对返回值转码
    lr_convert_string_encoding(lr_eval_string("{getInitData}"),
                               LR_ENC_UTF8,
                               "GB2312",
                               "getInitDataEnc");

    lr_output_message(lr_eval_string("{getInitDataEnc}"));

    } else {

    lr_error_message(">>> fail <<<");

    }

    lr_end_transaction("initData_Action", LR_AUTO);

    return 0;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值