最近经常接触有测试人员脚本在jmeter4.0运行失败,返回Response code: 400,HTTP返回400,官方解释是"Bad Request 客户端请求的语法错误,服务器无法理解",在jmeter5.1执行正常,这里本文记录下解决方法
一、jmeter4.0执行结果如下
1. 请求如下
2. 响应数据如下
二、jmeter5.1执行结果如下
1. 请求Request Body
2. 请求Request Headers
3. 响应数据Response Body
4. 响应数据Response headers
5. 响应数据Response headers
三、问题分析
1. 脚本如下,看脚本可以得出脚本没有申明HTTP信息头管理器,所以系统调用的默认请求表头
2. 经过对比jmeter4.0和jmeter5.1请求表头差异,可以看出他们的请求默认表头不一样,Jmeter5.1 HTTP接口 默认Content-Type类型为text/plain; Jmeter4.0 HTTP接口默认Content-Type类型为application/x-www-form-urlencoded,由于性能测试脚本HTTP接口表头类型就是text/plain,所以执行成功
3. 所以我们只需要在脚本中自己添加一个信息头管理器,然后申明为text/plain就行,右键测试计划》添加》配置元件》HTTP信息头管理器
4. 在信息头管理器,添加Content-Type=text/plain
5. 点击执行按钮,执行成功
如果文章对你有帮助,可以在右下角点击关注功能,欢迎转发、拍砖,本人会持续推出与测试有关的文章,与大家分享测试技术,每一篇原创文章都是用心编写,杜绝抄袭复制,微信公众号与本平台文章同步,方便大家查阅
QQ技术交流群:加群请输入验证信息 博客园
微信二维码关注公众号:
关注之后,回复资源下载,即可获取本人共享的各种资源下载地址