jmeter实际场景应用之测试上传excel文件

日常工作上测试的时候,会有一些场景是导入/上传文件。我们系统多是excel文件,这里就用excel文件为例,详述一下此次测试遇到的坑。最终结果是成功的,请看到最后!

1、获取接口的一些参数信息

先按F12调出控制台,然后实际操作一次,看一下调用的一些接口以及传参信息(会用到的,图中标注了1,2,3,4)

1、2是服务器ip、请求方式以及路径情况

3是信息头

4是请求参数

 

2、在jmeter上开始写

注意,这里参数名称【file】会是一个坑点

 

 

下面是请求头的配置。注意,这里参数【Content-Type】会是一个坑点

 

配置好这些参数后,执行,发现报错

 

查看请求参数等信息来分析

 

 3、执行报错,开始一步步解决问题

比对发现参数没问题,但是对【fileUpload:(binary)】这一个参数有疑问,所以去问了前端开发

https://blog.csdn.net/weixin_44994731/article/details/111238747---------对这种流形式的讲解

 

根据开发给的文档来看,是信息头中配置的Content-Type参数跟以前不太一样,我比对了一下,我配置的是对的,问题不是在这里

后又跟前端开发要了一个之前他们联调的参数请求来比对,发现Content-Type配置的确实不对

 

修改了头信息后,再次尝试,仍旧报错,再次比对,发现我的Contet-Type取值仍旧不对

 

 再次去百度学习一波后,意识到,在请求参数这里这个Content-Type指的是这个参数的类型,而不是在头信息中配置

且这里的name指的是参数名称,因此对文件的一些配置参数信息做了调整(参数名称改成fileUplod是因为第一步获取参数时请求参数中写的时fileUpload,是要用在这里的)

excel文件的MIME类型是:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

 

 保存后执行,仍旧报错(跟之前手动操作的参数信息各种比对,没有发现错误。心态有点崩......)

 

 想着是不是系统暂时没法访问,就再次手动操作一次,继续比对参数

这次发现了不同,请求头信息中【Content-Type】的值,不一样了!!!这个是动态变化的

继续问百度,找到一个同病相怜的老哥(带箭头的是重点需要看的信息),最终解决办法是:只要把HTTP信息头里面的content-type整个移除即可。

 

 

 

把HTTP信息头里面的content-type整个移除后再次执行,成功!!

 

 

 

 

 

 

posted @ 2021-09-01 18:56  念而不伤  阅读(795)  评论(0编辑  收藏  举报