登录接口-简约版(工作日记4)
创始人
2024-05-30 19:29:11

前提条件:
1、jmeter接口测试工具
2、接口信息
获取验证码信息
在这里插入图片描述

登录接口信息
在这里插入图片描述
题外话:

接口返回的数据中如果有文字就会乱码 怎么解决

1、进入jmter文件–进入bin文件夹,找到jmeter.properties文件
在这里插入图片描述
2、右键打开,可以用文本模式也可以用Notepad++,我这边是用notepad打开,ctrl+f 搜索iso
在这里插入图片描述
3、修改完后重启jmeter

接口测试步骤

1、进入jmeter ,新建一个测试计划,并新建一个http信息头管理器
输入对应的信息头数据信息
在这里插入图片描述
2、新建一个登录线程组及获取验证码的请求(因为这是一个需要验证码的登录接口所以我们得先获取它的验证码)
并输入对应的请求信息
在这里插入图片描述
3、添加结果树,查看对应的响应数据
在这里插入图片描述
4、我们需要将这个uuid提取出来,添加一个json提取器
在这里插入图片描述
5、将uuid提取之后,我们需要添加BeanShell取样器把它设置为全局变量
在这里插入图片描述
6、然后添加一个【用户自定义的变量】,在这里引用,其他接口就可以直接获取里头的uuid
在这里插入图片描述

插曲:函数可以直接用函数助手生成,步骤如下

打开方式:点击【工具】–【函数助手对话框】
在这里插入图片描述
2、使用步骤 :选择函数类型–输入名称 -输入对应的值
在这里插入图片描述
生成的函数
在这里插入图片描述

  • 回归正题
    以上我们就配置好了登录需要用到的uuid字段 接下里我们获取code字段
    7、同样新建一个【BaeShell取样器】
    通过以下代码去获取redis中的code
    在这里插入图片描述
import redis.clients.jedis.Jedis;
import java.util.ArrayList;
import org.apache.commons.lang3.StringUtils;String host = "47.92.37.7"; //服务器地址int port = 6379; //端口号String password = ""; //redis密码int index = 0; //redis db,默认为0String key = "captcha_codes:${uuid}"; //key值,需要读取数据的键值Jedis jedis = new Jedis(host, port);if(StringUtils.isNotBlank(password)){
jedis.auth(password);
}jedis.select(index); //选择redis  db
String value= jedis.get(key);  //通过key值获取对应value
log.info("value:"+value);
vars.put("code",value);  //将获取的value值保存到jmeter变量code中//将获取的value值保存到jmeter变量code中(这就是下一个登录接口中传参需要用到的code 需要获取的值)!!!!

8、添加一个查看结构树,看看code是否正常获取
在这里插入图片描述
显示执行成功 ,至此我们就获取到了uuid和code,我们就可以去做登录接口了
9、新建一个登录的http请求,并输入对应的请求参数
在这里插入图片描述
10、添加查看结果树,来查看登录接口是否成功
在这里插入图片描述
11、我们将返回的token数据设置未全局变量,同样添加一个BeachShell取样器
在这里插入图片描述
12、设置为全局变量后,我们需要放入用户自定义变量中供其他接口使用
在这里插入图片描述

相关内容

热门资讯

给空压机换上“中国关节” 本报讯 (记者 苏益纯 通讯员 洪江武) 运行温度降低20℃,设备振动值明显下降,各项指标均优于改造...
敏于监督 速于办案   本报讯(全媒体记者匡雪 通讯员赵元桢)“判决结果出来了,我们追诉的上游供货商、监督立案的下线买家...
实地走访 护“桂”有方   近日,广东省肇庆市高要区检察院检察官来到当地肉桂企业,了解企业经营发展现状,结合办案进行风险提示...
伊拉克称不追究外国石油公司“不... 当地时间3月20日晚,伊拉克石油部消息人士称,伊拉克政府决定对在伊外国石油公司负责开发的所有油田实行...
伊朗总统:无意与伊斯兰国家发生... 来源:新华网新华社德黑兰3月20日电 据伊朗伊斯兰共和国通讯社报道,伊朗总统佩泽希齐扬20日表示,伊...