“欢迎勾搭心月小姐姐,了解近期开班”
url重定向就是将网络请求转发到一个新地址,在接口测试过程中,遇到url重定向的情况,要如何进行处理呢?在此我分享Jmeter的一种方式。
假设有这样一个登陆场景:打开登陆页面:http://localhost:8080/login(A接口),输入正确的用户名和密码,点击登录,跳转到页面http://localhost:8080/main(C接口)。
使用postman测试这个登录接口A,发现返回的数据是登录页的数据,而不是登录成功后页面C的数据。问了开发才知道,这里面存在302重定向,于是我尝试了以下的方法:
使用fiddler拦截登录请求发现,携带用户名、密码参数的post请求,发给了:http:localhost:8080/check(接口B),然后重定向到接口C,接口C返回的数据为登录成功后的正确数据。因此可以这样设计登录接口:
1)创建线程Thead
2)添加用户登录请求Http Request
添加POST请求,用户名和密码参数写好,勾选Follow Redirects(跟随重定向),发送到接口B
补充:
Redirect Automatically(自动重定向):只针对Get和Head请求,自动重定向可以自动转向到最终目标页面,但是Jmeter是不记录重定向的过程内容;
Follow Redirects(跟随重定向):Http Request取样器的默认选项,当响应code是3xx时,自动跳转到目标地址。与自动重定向不同,Jmeter会记录重定向过程中的所有请求响应,在查看结果树时可以看到服务器返回的内容
3)添加结果树View Results Tree,可以看到,重定向后的接口C的响应数据是正确的
接口B的请求中包含302重定向
领取专属 10元无门槛券
私享最新 技术干货