JMeter压测文件上传接口和中文乱码
创始人
2025-05-29 14:54:43

一、压测文件上传接口

新建测试计划,然后添加需要的元件。

在这里插入图片描述

1、添加HTTP信息头管理器

可以在测试计划中添加,也可以在线程组里面添加。

在这里插入图片描述

我的接口使用到 token信息。这里在测试计划中添加。

在这里插入图片描述

2、添加线程组

在这里插入图片描述

上图解释:会在 2秒钟之内启动起来 5个线程,并且让这 5个线程,每个线程都循环调用接口1次。

3、添加HTTP请求

在这里插入图片描述
设置接口参数,需要注意:

  1. 不要在请求头加Content-Type:multipart/form-data,只需勾选-对post使用multipart/form-data即可。
  2. 文件上传参数:
    • 文件名称:默认会查找测试计划所在的路径下的文件,我们可以使用绝对路径指定需要上传的文件。
    • 参数名称:接口接受文件的参数名,一般都是file。
    • MIME类型:使用application/octet-stream是可以的,最好与上传文档类型一一对应。
  3. 参数:接口需要的其他参数。

MIME 参考手册:https://www.w3school.com.cn/media/media_mimeref.asp

4、查看结果树

结果树当中会把对应的一个http接口返回的response都打印出来,可以选仅显示错误日志,仅显示成功日志。

在这里插入图片描述

结果树说明:

  • 取样器结果:返回值报200,表示执行接口调试成功
  • 请求:发送的数据
  • 响应数据:返回的数据

其中取样器结果说明:

  • Thread Name:线程组名称
  • Sample Start: 启动开始时间
  • Load time:加载时长
  • Latency:等待时长
  • Size in bytes:发送的数据总大小
  • Headers size in bytes:发送数据的其余部分大小
  • Sample Count:发送统计
  • Error Count:交互错误统计
  • Response code:返回码
  • Response message:返回信息
  • Response headers:返回的头部信息

5、聚合报告

聚合报告即压测过程结束时对每次请求及对整体请求的一次总结报告。

在这里插入图片描述

聚合报告说明:

  • Label:HTTP Request name属性值。
  • Samples:测试的过程中一共发出了多少个请求即总线程数,(如果模拟10个用户,每个用户迭代10次,这里就显示100),对应图形报表中的样本数目。
  • Average:单个Request的平均响应时间,计算方法是总运行时间除以发送到服务器的总请求数,对应图形报表中的平均值。
  • Median:50%用户的响应时间。
  • 90%Line:90%用户的响应时间。
  • Min:服务器响应的最短时间。
  • Max:服务器响应的最长时间。
  • Error%:本次测试中出错率,请求的数量/请求的总数。
  • Throughput:吞吐量,默认情况下表示每秒完成的请求数。
  • KB/Sec:每秒从服务器接收到的数据量,即每秒钟请求的字节数,时间单位均为ms。

6、图形结果

图形结果:压测时的整体参数可视化。

在这里插入图片描述

图形结果说明:

  • 样本数目:总共发送到服务器的请求数。
  • 最新样本:代表时间的数字,是服务器响应最后一个请求的时间。
  • 吞吐量:服务器每分钟处理的请求数。
  • 平均值:总运行时间除以发送到服务器的请求数。
  • 中间值:有一半的服务器响应时间低于改值而另一半高于该值。
  • 偏离:表示服务器响应时间变化、离散程度测量值的大小。

二、Jmeter中文乱码问题

使用 Jmeter都会有遇见中文乱码的问题,主要有请求体中文乱码、响应报文的中文乱码以及文件上传的中文乱码。 原因是:Jmeter源码里默认的编码是ISO-8859-1。

1、解决请求参数中文乱码

在HTTP请求控件指向UTF-8,可解决请求中文乱码。

在这里插入图片描述

2、解决结果集响应数据中文乱码

在jmeter/bin路径下的 jmeter.properties,第1098行,将默认的 sampleresult.default.encoding=ISO-8859-1改为UTF-8,最后重启JMeter工具。即可解决返回结果的中文乱码。

sampleresult.default.encoding=UTF-8

在这里插入图片描述

在这里插入图片描述

3、上传文件中文乱码

大家尽量使用英文文件名测试。本人没有尝试解决上传文件中文乱码,可参考下面文章。

参考文章:

  • jmeter上传中文文件夹后页面显示乱码的解决方法:https://blog.csdn.net/qq_36800800/article/details/109284004

– 求知若饥,虚心若愚。

相关内容

热门资讯

聊一聊系统重构 打破常规,重立新规; 01 开始想聊这个话题的时候,我是...
【华为OD机试 2023最新 ... 给定一个 m x n 的矩阵,由若干字符 ‘X’ 和 ‘O’构成,’X’表示该处已被占据,’O’表示...
Python爬虫——Pytho... JSON(JavaScript Object Notation)是一种轻...
Spring Boot 3.0... 有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot版本3.0.3 源码地址:ht...
KANO模型(卡诺模型):产品... 在做项目做产品的过程中,作为互联网产品设计师的我们,经常会接到来自PM/...
连载一:go安装和配置环境变量 go语言标准库地址:Go语言标准库文档中文版 | Go语言中文网 | Golang中文...
手把手教你基于HTML、CSS... The sand accumulates to form a pagoda写在前面HTML是什么&#...
字节测试工程师悄悄告诉我的软件... 目录 前言 测试策略的关注重点 测试策略主要内容 总体测试策略 初级版本测试策略 跟踪测试执行 版本...
STM32学习(五) GPIO General Purpose Input Output,通用输入输出端口&...
开发还分前、后端?它们都是做什... 开发还分前、后端?它们都是做什么的? 2023-03-20 14:54·...
Nordic nRF5 mes... nRF5 mesh蓝牙组网软件SDK下载链接: NordicSemiconductor...
【uniapp tabs标签组... 前言 这个tabs功能是很多移动端项目都要用的 最近我刚好遇到了这个功能 因为我们项目不让用uvie...
电子采购管理软件开发功能有哪些... 电子采购系统是将供应商、招标机构、评标专家、政府监督机构等连接起来,企业、机关和个人在...
K8S集群1.24使用dock... 文章目录1. 环境介绍2. 异常信息3. 分析问题3.1 kubernetes 健康检查3.1.1 ...
TS接口类型 40. TS接口 1. 定义 TypeScript 中的接口是一种抽象结构,用于定义对...
Time out. EFI N... 背景:最近使用了虚拟机,正准备安装个Windows10的操作系统...
数字电路2. OC门、OD门、... 数字电路2. OC门、OD门、三态门一、OC门——集电集开路门1. 基本概念2. 作用3. 使用要点...
操作系统性能优化实践 感谢内容提供者:四川省奇呱科技有限公司 文章目录一、常见性能指标及USE法分类1.C...
展现AI与自动化测试技术之间的... 目录:导读 前言 一、介绍 1、什么是自动化测试技术 2、痛点 3、几款优秀的自动化测...
第一周web 目录 [NISACTF 2022]popchains  [NSSCTF 2022 Spring Re...
百元降噪耳机推荐,适合学生党入... ​降噪蓝牙耳机怎么选?有哪些适合学生党使用的百元降噪蓝牙耳机?很多人在面...
C# winform坐标系类型... C# winform坐标系类型详解 GDI+ 使用三个坐标空间:世界、页面和设...
Windows平台安装MacO... 写在前面:博主是一只经过实战开发历练后投身培训事业的“小山猪”,昵称取自...
Windos远程连接Linux... ssh安装 使用root用户登录 su root 更换apt 下载源为清华源,先备...
近期媒体邀约活动总结,注意事项 传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 随...
每日一博 - Java 异步编... 文章目录概述概述Executor与线程池Java 中的线程池使用线程池的注意事项强烈建议使用有界队列...
thinkphp基础学习 Composer安装thinkphp6,输入命令,其中tp为项目目录名可...
10从零开始学Java之开发J... 作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦CSD...
项目团队任务分配的5大注意事项         想要把工作合理分配给下属,在进行项目团队任务分配时,需要...
scratch猜数字游戏 电子... 目录 scratch猜数字游戏 一、题目要求 1、准备工作 2、功能实现 二、案例分析 <