jmeter进阶——上传文件

一、jmeter文件上传的使用背景

1.1 背景

在我们使用jmeter做接口测试/接口自动化测试的时候总有一些项目涉及到文件上传的接口,这时我们发现平时使用的方法总是达不到我们的要求,故而我们在这里聊一下jmeter是如何实现文件上传的。

二、jmeter文件上传的实现效果

1、通过jmeter文件上传实现对上传接口测试
2、jmeter文件上传的文件在数据库/前端显示正常
在这里插入图片描述
数据库数据
在这里插入图片描述

三、jmeter文件上传实现过程

3.1 文件上传接口讲解

3.1.1 文件上传接口前端显示和接口信息获取

浏览器F12前端获取文件上传接口信息
在这里插入图片描述
然后把URL、入参和Headers写入jmeter
在这里插入图片描述
最后把文件上传的内容写入jmeter:
来源:文件上传接口滑到底,在传参中点击view source 用来查看文件上传的参数
在这里插入图片描述
把获取到的 name值和content-Type记录下来在jmeter接口请求的时候用的到
在这里插入图片描述

3.1.2 接口文档获取上传接口信息

接口文档获取文件上传接口信息(不如从前端获取到的直观)
在这里插入图片描述

3.2 文件上传jmeter讲解

jmeter的文件上传有独特的设置:
url、header、data还是按照我们正常的请求设置就可以
在这里插入图片描述

对于传输的文件我们这里需要使用jmeter HTTP请求的【文件上传】设置
【文件上传】中添加我们需要上传文件的信息,包含:文件参数名称、文件类型、文件路径
文件路径:需要上传文件的路径(这里可以使用绝对路径/相对路径)
文件参数名称:就是我们前端中获取的name/接口文档中的文件上传路径名称file
文件类型:根据上传的文件类型不同这里也是不同的参数值
在这里插入图片描述

3.3 文件上传中涉及到的文件类型

常见类型:
在这里插入图片描述

3.5 jmeter在文件上传中需要注意的点

1、http请求中基本信息上对于post使用multipart/form-data的勾选
平常我们使用这个类型都是把表单数据使用url编码后传送给后端,二进制文件当然没办法一起编码进去了。所以multipart/form-data就诞生了,专门用于有效的传输文件
在这里插入图片描述

2、【高级】设置中的客户端实现方式的选择
Java和HttpClient4.X都可以用发送POST请求,但是HttpClient4.X在发送请求时会自动对特殊字符做转义。使用Java方式,则是调用Java原生的HTTP请求方法发送请求
【根据实际情况选择实现方式】
在这里插入图片描述
3、HTTP请求头中不需要添加content-type为multipart/form-data,否则所有的参数都会被当成文件以二进制形式传输
在这里插入图片描述

四、jmeter文件上传的拓展

4.1 关于上传的文件中文乱码问题

  • 9
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
回答: 这个错误是因为无法创建Java虚拟机导致的,同时还发生了致命异常,导致程序退出。解决这个问题的方法有几种。首先,你可以尝试增加Java虚拟机的内存。通过在运行程序的时候添加以下参数:-Xmx512m(根据需要调整内存大小)。这样可以增加Java虚拟机的堆内存限制,可能解决问题。另外,你还可以检查你的Java环境变量设置是否正确。确保JAVA_HOME和PATH变量都正确指向了你的Java安装路径。如果环境变量设置正确,但问题仍然存在,那么可能是由于你的Java安装文件损坏或不完整导致的。在这种情况下,你可能需要重新安装Java。同时,你还可以尝试更新你的Java版本,以确保使用的是最新的Java版本。希望这些方法对解决你的问题有所帮助。123 #### 引用[.reference_title] - *1* *2* [Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred.](https://blog.csdn.net/qq_48435967/article/details/125350165)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] - *3* [Error: Could not create the Java Virtual Machine.Error: A fatal exception has occurred. Progra](https://blog.csdn.net/dsfdaifeng/article/details/123537528)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值