linux和windows接口中文乱码_Loadrunnerweb接口基础

本文详细介绍了如何使用LoadRunner进行Web接口测试,特别是针对Linux和Windows接口中文乱码的问题,提供了解决方案。文中列举了三种Content-Type类型(application/x-www-form-urlencoded、multipart/form-data、application/json)的POST请求示例,并指导如何添加检查点、判断语句以及打印返回信息。此外,还提供了GET请求的处理方法。
摘要由CSDN通过智能技术生成

对于只给web接口的按下面步骤,否则还是录制或者谷歌浏览器导出har文件比较轻松。

POST:

1.询问接口参数的格式或者看浏览器,Content-Type

1e4969033365e10e8510d27f66c00348.png

一般分为3种(标颜色的需要根据实际情况修改)

第一种:Content-Type 是application/x-www-form-urlencoded

Loadrunner里方法选择如下:

开头加如下代码:

web_add_header("Content-Type","application/x-www-form-urlencoded;charset=utf-8");

提交数据方法如下(参数名和参数值对应的填进去,文件格式如参数名3):

web_submit_data("接口名称",

              "Action=http://。。。。。。。。。/check",

              "Method=POST",

              "TargetFrame=",

              "Referer=",

              ITEMDATA,

              "Name=参数名1","Value={参数值1}", ENDITEM,

              "Name=参数名2","Value=参数值2", ENDITEM,

      "Name=参数名3","Value=C:\\User\\...\\test.xx",”File=Yes”, ENDITEM,

              LAST);

第二种:Content-Type 是multipart/form-data

Loadrunner里方法选择如下:

开头加如下代码:

web_add_header("Content-Type","multipart/form-data; charset=UTF-8");

提交数据方法如下(参数名和参数值对应的填进去):

web_submit_data("接口名称",

              "Action=http://.。。。。。。。。/check",

              "Method=POST",

              "EncType=multipart/form-data",

              "TargetFrame=",

              "Referer=",

              ITEMDATA,

              "Name=参数名1","Value={参数值1}", ENDITEM,

              "Name=参数名2", "Value=参数值2", ENDITEM,

              LAST);

第三种:Content-Type 是application/json

Loadrunner里方法选择如下:

开头加如下代码:

web_add_header("Content-Type","application/json; charset=UTF-8");

提交数据方法如下(参数名和参数值对应的填进去):

web_custom_request("接口名称",

              "URL=http://www.baidu.com",

              "Method=POST",

              "TargetFrame=",

              "Resource=0",

              "Referer=",

              "Mode=HTTP",

"EncType=application/json",

              "Body={\"参数名1\":\"{参数值1}\",\"参数名2\":\"参数值2\"}",

              LAST);

注意:application/json格式的参数引号前面要加反斜杠

2. 加检查点和判断语句(上面3种都要)

加在提交数据方法前面。

如下格式:

web_reg_find("Search=Body",

               "SaveCount=count",

                     "Text=200",

                     LAST);

注意:检查范围在body里面,检查内容Text是检查返回的值是否包含预期的值。

一般类似于:{“success”:true,“msg”:“修改成功!”},这里Text=true,就说明接口返回成功。

注意:如果Text=中文内容,可以显示没有找到对应结果,可能是中文内容变成乱码了,可以Text=乱码内容。怎么把返回内容打印出来下面有写。

然后增加判断语句打印相关信息,一般写在提交数据方法后面。

如下:

if (atoi(lr_eval_string("{count}")) > 0)

       {

              lr_output_message("PASS");

              lr_output_message("*******************");

       }

       else

       {

              lr_error_message("FAIL");

       }

说明:web_reg_find里面的count用来计数,加上大括号是参数的意思{count},

加上引号转成字符串"{count}",atoi(lr_eval_string("{count}"))把字符串转成整数。

如果这个整数大于0,说明之前的检查点web_reg_find找到了对应的返回结果,则lr_output_message日志输出出来。

输出的日志可以在下面看到:

bb306635cde7c619b72f568c3380f6a4.png

如果这个整数等于0,说明没有找到返回的结果,lr_error_message输出错误信息,这个错误信息也可以在上面的控制台输出界面看到信息,也会在下面显示:

2875d6cf48d20b17a2f490ba9101c600.png3.打印返回信息

在提交数据方法前面加上

web_reg_save_param("respond","LB=","RB=",LAST);

在提交数据方法后面加上

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

可以查看接口返回的信息。

把上面的整合以下,然后加粗部分根据实际情况修改,其余可以复制,再加上事务,Action脚本如下

============================

Action()

{

//检查点

web_reg_find("Search=Body",

                     "SaveCount=count",

                      "Text=200",

                      LAST);

//根据实际的content-type填写

web_add_header("Content-Type","application/json;charset=UTF-8");

web_reg_save_param("respond","LB=","RB=",LAST);

lr_start_transaction("事务名");

  //根据content-type选择对应的提交数据方法

web_custom_request("login",

    "URL=http://。。。。。。。login",

    "Method=POST",

    "Resource=0",

    "RecContentType=application/json;charset=UTF-8",

    "Referer=",

    "Mode=HTTP",

 "Body={\"username\":\"xxx\",\"password\":\"xxx\",\"str\":\"\",\"strCert\":\"\",\"Signed\":\"\",\"cap\":\"\",\"sys\":\"\"}",

LAST);

lr_end_transaction("事务名", LR_AUTO);

//打印转码后的响应报文

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

//判断接口执行是否成功,如果失败,日志打印错误信息

if (atoi(lr_eval_string("{count}"))> 0)

{

        lr_output_message("PASS");

        lr_output_message("******************");

}

else

{

        lr_output_message("********************");

        lr_error_message("FAIL");

}

return 0;

}

=======================================

GET:

函数如下,其他可以同post,也可以随便录一个,找到web_url,复制过来改改

web_url("接口名称",
"URL=http://。。。。/xxx?参数名1=参数值1&参数名2=参数值2",
"TargetFrame=",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t7.inf",
"Mode=HTML",
LAST);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值