Loadrunner测试json接口
1. loadrunner + json说明
使用lr测试json接口,向服务端发送json格式请求,接收处理返回响应数据。
主要用到函数:
1)web_custon_request
2)web_reg_save_param (此函数常用户处理动态参数,该方法在LoadRunner中被称为Correlation(关联))
2. web_custon_request 参数说明
3. 具体实例如下(包含发送json,获取响应数据,设置关联、设置检查点):
/*
定义事务:
1)用户注册
2)用户登录
3)用户签到
接口为:application/json
思路:
1)app注册,获到mobile
2)使用获取到的mobile登录,获取tokenid和userid。 参数化:手机号码、设备号
*/ Action()
{
//定义接口url
char *Interface_Url;
lr_save_string("http://192.168.0.1:8080/action.a","Interface_Url"); //注册事务开始
lr_start_transaction("用户注册");
lr_rendezvous("register"); //检查用户是否注册成功
web_reg_find("Search=Body",
"Text=createTime",
"SaveCount=createTime",
LAST); //web_set_max_html_param_len("10000000"); //获取用户注册后响应数据,并传给mobile
web_reg_save_param("mobile",
"LB=\"mobile\":\"", //设置左边界
"RB=\",", //设置右边界
"Ord=1",
"Notfound=empty",
"Search=Body",
LAST); web_custom_request("register",
"Url={Interface_Url}", //设置url
"Method=POST", //设置方法,post或get
"Mode=HTTP",
"EncType=application/json", //编码类型
"RecContentType=application/json",
"Body={\"c\":\"1001\",\"p\":{\"code\":\"9051\",\"mobile\":\"{phone}\",\"pwd\":\"123456\",\"model\":\"{model}\",}}", //请求主体,json格式,分号前需要加斜杠
LAST); lr_vuser_status_message("注册事务,虚拟用户数 #%s",lr_eval_string("{phone}"));
lr_end_transaction("用户注册",LR_AUTO); //登录事务开始
lr_start_transaction("用户登录");
lr_rendezvous("login"); web_reg_find("Search=Body",
"Text=lastLoginTime",
"SaveCount=lastLoginTime",
LAST);
//获取用户登录后响应数据tokenId,并传给pdl_dynamic_tokenId
web_reg_save_param("pdl_dynamic_tokenId",
"LB=\"tokenId\":\"",
"RB=\"",
"Ord=1",
"Notfound=empty",
"Search=Body",
LAST);
//从用户登录响应数据中,获取pdl_user_id
web_reg_save_param("pdl_user_id",
"NotFound=warning",
"LB=\"id\":",
"RB=,\"inviteCode",
"Ord=1",
"Search=Body",
LAST);
web_custom_request("login",
"Url={Interface_Url}",
"Method=POST",
"Mode=HTTP",
"EncType=application/json",
"RecContentType=application/json",
"Body={\"c\":\"1002\",\"p\":{\"mobile\":\"{pdl_mobile}\",\"pwd\":\"123456\"}}",
LAST);
lr_end_transaction("用户登录",LR_AUTO); //用户签到
lr_start_transaction("用户签到");
lr_rendezvous("Sign_in"); web_reg_find("Search=Body",
"Text=signDate",
"SaveCount=signDate",
LAST);
web_custom_request("pdl_Sign_in",
"Url={Interface_Url}",
"Method=POST",
"Mode=HTTP",
"EncType=application/json",
"RecContentType=application/json",
"Body={\"c\":\"1014\",\"p\":{\"userId\":\"{pdl_user_id}\",\"tokenId\":\"{pdl_dynamic_tokenId}\"}}",
LAST);
lr_end_transaction("用户签到",LR_AUTO); return ;
}
Loadrunner测试json接口的更多相关文章
- Loadrunner模拟JSON接口请求进行测试
Loadrunner模拟JSON接口请求进行测试 一.loadrunner脚本创建 1.Insert - New step -选择Custom Request - web_custom_re ...
- Loadrunner Http Json接口压力测试
前天接到了一个测试任务,要求测试一下ES(elsticsearch)在不同并发下的查询效率.如图: 业务场景是在客户端根据具体车牌查询相关车辆信息,结果返回前10条记录. 从图中可以看到,接口的请求参 ...
- LoadRunner HTTP+Json 接口性能测试
接口的请求参数和返回结果均是JSON字符串,请求可以用POST或者GET方法.先说GET方法: 一.GET方法测试 Insert - New step -选择Custom Request - web_ ...
- LoadRunner 测试Socket接口函数说明
lrs_save_param_ex是lrs_save_param的扩展函数,包含了lrs_save_param的基本功能.其函数语法结构如下: int lrs_save_param_ex ( char ...
- 使用Loadrunner进行http接口压力测试
业务描述: 在业务系统里进行查询操作,查询的结果是通过请求http接口,从系统中处理并将结果以json字符串返回. 本文就讲述使用Loadrunner对此类接口进行压力测试并记录相关的性能指标数据: ...
- LoadRunner模拟REST接口的json请求
LoadRunner模拟REST接口的json请求 现在很多手机应用的性能测试,REST接口调用通过json格式,在用loadrunner模拟这些json请求时,需要开发提供 1.供接口地址 2.提交 ...
- SoapUI测试WS接口实战
引文: 本文讨论以下问题: 视频播放功能如何进行压力测试? 进行webservices接口测试时,用LR和soapui哪个工具更好? 1 测试需求 前几天接到一项压力测试的任务:视频播放功能的并发压力 ...
- 使用SOAPUI测试WEBAPI接口
其实很简单,用起来也挺方便的. 首先,先去百度下SoapUI 下载,下载安装好后,打开软件. 1.新建一个项目 点击 Create Empty Project 按钮后,会自动新建一个项目,名字默认为: ...
- 使用Jmeter3.1进行接口测试(包含需登录后测试的接口)
Jmeter版本为3.1,以下只针对此版本进行测试说明: 1.打开Jmeter3.1: 启动命令路径:apache-jmeter-3.1\bin\jmeter.bat 2.测试步骤: 1.测试计划-- ...
随机推荐
- Keil C51汉字显示的bug问题
一.缘起 这两天改进MCU的液晶显示方法,采用“即编即显”的思路,编写了一个可以直接显示字符串的程序.如程序调用disstr("我是你老爸");液晶屏上就会显示“我是你老爸”. 二 ...
- hdoj 1859 最小长方形
最小长方形 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- iOS-关于微信支付
突然发现的一篇文章,这位博主介绍的还是挺详细的,给大家分享一下 不懂的也可以咨询我qq:564702640 1.申请接入 详见 微信支付申请接入 . 创建应用+审核通过,你将得到:APP_ID.APP ...
- zoj 3820 Building Fire Stations 树的中心
Building Fire Stations Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.zju.edu.cn/onlinejudge ...
- 大作业 XXX大学 课程管理系统
#include<stdio.h> #include<iostream> #include<string.h> #include <fstream> # ...
- StageFright框架流程解读
1. StageFright介绍 Android froyo版本号多媒体引擎做了变动,新加入�了stagefright框架,而且默认情况android选择stagefright,并没有全 ...
- Android Studio导入项目
原文:http://ask.android-studio.org/?/article/21 本篇教程中使用到的Android Studio版本为1.0, Eclipse ADT版本23.0.4.请尝试 ...
- 【C/C++多线程编程之六】pthread相互排斥量
多线程编程之线程同步相互排斥量 Pthread是 POSIX threads 的简称,是POSIX的线程标准. Pthread线程同步指多个线程协调地,有序地同步使用共享 ...
- NET中間語言(IL) 图解
转载地址是:http://msdn.microsoft.com/zh-tw/library/dd229210.aspx 想查看IL指令,请看中英文对照表: CN-http://www.cnblogs. ...
- php一些技术要点连接地址
http基本认证: http://www.php.net/manual/zh/features.http-auth.php