近期有柠檬班的学生找到华华,问了一个问题,就是利用Jmeter作接口测试的时候,如何提取头部的JSESSIONID而后传递到下一个请求,继续完成当前用户的请求。html
其实,关于这个问题有三种种解决方法:正则表达式
1)从响应数据里面提取JSESSIONID,点击连接能够查看http://www.javashuo.com/article/p-nrodjuaw-n.htmlapi
2)若是响应数据里面没有返回JSESSIONID,那么就能够保持cookie,今天这篇博客,咱们重点讲解第这种方法。服务器
3)若是响应头里面有这个JSESSIONID,咱们能够经过添加cookie来解决这个问题,点击连接能够查看:https://www.cnblogs.com/liulinghua90/p/9257548.htmlcookie
1.测试地址:session
登陆:http://XXXX:8080/futureloan/mvc/api/member/login 充值:http://XXXX:8080/futureloan/mvc/api/member/recharge
2.参数提取:mvc
登陆的参数:mobilephone、pwd 充值的参数:mobilephone、amount
3.测试前场景:工具
1:登陆以后会随着登陆的响应结果产生一个JESSIONID再响应头。 2:充值请求必须带着JESSSIONID一块儿发给服务器,才会请求成功。
4:选用工具:Jmeter测试
1:打开Jmeter--->添加线程组--->添加HTTP请求--->填入登陆请求数据,以下所示:spa
2:打开Jmeter--->添加线程组--->再添加HTTP请求--->填入充值请求数据,以下所示:
3.运行线程组,检查登陆的结果以及充值的结果,发现登陆成功了以下所示:
充值未成功,提示以下:
4.再去检查Jmeter里面登陆的响应数据的请求头,以下所示:
1:在线程组下面添加一个cookie管理器,以下所示:
2:保存好,再次发起请求,获得以下结果:
3:同时看到充值请求里面带上了本来没有的cookie
解决这个问题的关键是:1)要知道cookie session jessionid的做用是什么
2)怎么提取这些关键信息并保持
3)学会利用正则表达式