我们平常会在测试过程中遇到这个问题:必须要登录才能进行下一步操作。
如何来处理这种情况呢?Jmeter可以通过处理cookie来完成这种需求。
有两种cookie处理方式:
- HTTP Cookie 管理器
- HTTP信息头管理器&正则表达式提取器的结合使用
下面通过登录接口以及充值接口来学习cookie的两种处理方式。
登录接口:http://47.107.168.87:56478/futureloan/mvc/api/member/login,参数mobilephone,pwd
充值接口:http://47.107.168.87:56478/futureloan/mvc/api/member/recharge,,参数mobilephone,amount
1.HTTP Cookie管理器
操作分析如下:
- 测试计划-->线程组
- 线程组-->HTTP请求默认值
- 线程组-->Sampler-->HTTP请求(登录)
- 线程组-->Sampler-->HTTP请求(充值)
- 测试计划-->察看结果树
在没有添加HTTP Cookie管理器的情况下,可以看到充值没有成功,需要先登录,下面来添加HTTP Cookie管理器
- 线程组-->HTTP Cookie管理器
在添加HTTP Cookie管理器后,可以看到充值成功了!
2.HTTP Cookie管理器&正则表达式提取器结合使用
操作分析:
- 测试计划-->线程组
- 线程组-->配置元件-->HTTP请求默认值
- 线程组-->Sampler-->HTTP请求(登录)
- HTTP请求(登录)-->后置处理器-->正则表达式提取器
如果想要查看提取器提取的结果,可以添加一个Debug Sampler
- 线程组-->Sampler-->Debug Sampler
- 线程组-->Sampler-->HTTP请求(充值)
- HTTP请求(充值)-->配置元件-->HTTP Cookie管理器
- 测试计划-->察看结果树