贵州中小型营销型网站建设公司,婚纱网站设计图,实战直播,网站建设的大概费用最近用JMeter做接口测试#xff0c;频繁遇到了文件上传的接口#xff0c;与其他一般接口的处理方式不一样#xff0c;想着分享下#xff0c;希望能给测试同学一点启发。
文章将围绕三个部分进行展开#xff1a;
一、用户场景
二、接口请求参数
三、JMeter脚本编写步骤…
最近用JMeter做接口测试频繁遇到了文件上传的接口与其他一般接口的处理方式不一样想着分享下希望能给测试同学一点启发。
文章将围绕三个部分进行展开
一、用户场景
二、接口请求参数
三、JMeter脚本编写步骤
四、JMeter脚本执行
一、用户场景
有一个新建用户凭证页面填写字段信息上传图片文件点击提交即新建成功。
这个步骤包含两个接口一个上传图片文件接口返回一个路径字段值在新建凭证接口的请求参数中带上路径即可新建成功。 实现脚本的基本思路就是先调用上传接口利用JSON提取器将返回的路径字段值提取出来存在一个变量${get_picture_url}中再调用新建接口直接将路径变量的值赋给请求参数attachUrl。
二、接口请求参数
1、文件上传接口
对于文件上传类的接口注意观察Request Headers的Content-Type值为multipart/form-data 请求体参数为file 响应值返回上传文件的路径信息即data字段的值 2、新建用户凭证接口
Request Headers的Content-Type值为application/x-www-form-urlencoded 请求体参数为有6个主要关注attachUrl这个参数是上传接口返回字段data的值 响应值新建成功则返回success 三、JMeter脚本编写步骤
一上传接口脚本编写
1、添加一个线程组财务管理 2、添加一个简单控制器
加不加都不重要主要是为了规范脚本使脚本更便于阅读一般是一个简单控制器下一个http请求 3、添加http请求
协议服务器名称请求方法请求路径等照常填写但是要勾选 Use multipart/form-data for POST如果还有其他参数直接在Parameters里面照常填写示例中的接口没有就不写了 切换至File Upload填写上传文件信息
文件名称写本地的上传文件路径即可注意脚本部署到Linux服务器上时注意切换路径
参数名称填写文件路径的参数名称示例中的参数是file
MIME类型multipart/form-data 4、添加响应断言
根据实际接口填写即可 5、添加JSON提取器
Names of Created variables作为引用的变量名称多个变量名通过分号;隔开自定义
JSON Path expessions格式为 . 层级名称本次示例即为 .层级名称本次示例即为.层级名称本次示例即为.data
Match No.取第几个数值0代表随机-1代表取全部数组数据1代表取一个变量数值与设置的变量名称有关本次示例填-1说明如果填写1后面引用变量的时候直接用g e t p i c t u r e u r l 即可如果填写 − 1 返回的是一个数组后面引用变量的时候要用 {get_picture_url}即可如果填写-1返回的是一个数组后面引用变量的时候要用get p icture u rl即可如果填写−1返回的是一个数组后面引用变量的时候要用{get_picture_url_1}${get_picture_url_2}的形式
Compute concatenation var(suffix_ALL)匹配到的所有数值并保存默认为空即可
Default Value取值失败时展示的内容默认为空即可 二新建用户凭证接口
1、添加一个简单控制器
加不加都不重要主要是为了规范脚本使脚本更便于阅读一般是一个简单控制器下一个http请求 3、添加http请求
协议服务器名称请求方法请求路径等照常填写不需要勾选 Use multipart/form-data for POSTattachUrl参数直接将变量${get_picture_url_1}的值赋给attachUrl File Upload也不用填写任何信息了 4、添加响应断言
根据实际接口填写即可 四、JMeter脚本执行
执行脚本除了查看结果数看接口全部执行成功外还要去页面看新建的用户凭证详情中上传图片是否成功。
今天在调试过程中发现即使新建用户凭证接口的路径不正确也能成功新建用户凭证只不过在查看详情的时候图是裂的就像这种效果所以即使脚本调通了也要去页面看看图片是不是真的上传成功了。 这样一个完整的接口上传脚本就成功了。
最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走 这些资料对于【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴上万个测试工程师们走过最艰难的路程希望也能帮助到你