Jmeter的csv参数化,XX.csv有中文时,请求的参数是乱码

博客主要讲述了XX.csv文件存在中文时,请求参数传递出现乱码,且传递到前端展示也为乱码的问题。最初设置编码为UTF - 8未能解决,将编码改成gb2312后问题得到解决。

1、XX.csv有中文时,请求的参数是乱码问题:

2、不是响应结果里,是请求的参数传递的是乱码,传递到前端展示也是乱码

 

3、解决:

开始设置的是UTF-8,是不可以的,改成gb2312后就好了

JMeter 中使用 CSV 数据集进行多用户参数化是性能测试中非常常见的需求。通过这种方式,可以模拟多个用户使用不同的用户名、密码等信息进行登录或其他操作,从而更真实地反映系统在高并发场景下的表现。以下是详细的配置步骤: ### 1. 准备 CSV 文件 首先,需要准备一个包含多用户数据的 CSV 文件。例如,模拟用户登录场景CSV 文件可以包含用户名和密码字段: ``` username,password user1,pass1 user2,pass2 user3,pass3 ... user100,pass100 ``` 将上述内容保存为 `users.csv` 文件,并确保文件编码为 UTF-8,以避免中文乱码问题。 ### 2. 添加 CSV 数据集配置元件 在 JMeter 的测试计划中,右键点击“线程(用户)” -> “配置元件” -> “CSV 数据文件设置”,然后进行如下配置: - **文件名**:指定 CSV 文件的路径,例如 `users.csv`。 - **变量名称**:输入变量名,例如 `username,password`,这些变量将在后续的请求中被引用。 - **文件编码**:选择适当的编码格式,通常为 UTF-8。 - **忽略首行**:勾选此项,以跳过 CSV 文件的第一行(即字段名)。 - **是否循环**:根据需求选择是否循环读取 CSV 文件中的数据。 - **线程共享模式**:选择“所有线程共享”,以确保每个线程都能获取到不同的数据行。 ### 3. 在 HTTP 请求中使用参数 在 HTTP 请求中,可以通过 `${username}` 和 `${password}` 来引用 CSV 文件中的参数。例如,在“Body Data”部分,可以编写如下 JSON 数据: ```json { "username": "${username}", "password": "${password}" } ``` ### 4. 运行测试 配置完成后,点击 JMeter 工具栏上的绿色启动按钮开始测试。JMeter 会根据 CSV 文件中的数据进行多次请求,每个请求都将使用不同的参数,从而实现多用户的模拟。 ### 5. 验证测试结果 通过添加“监听器”如“查看结果树”或“聚合报告”,可以查看每次请求的结果,验证参数化是否按预期工作。 ### 示例代码 假设有一个简单的 HTTP 接口用于接收参数化数据: ```java @PostMapping("/test/jmeter3") public String test3(@RequestBody String str) throws Exception { String res = "{\n" + " \"status\":\"0\",\n" + " \"message\":\"" + str + "\"\n" + "}"; return res; } ``` 在 JMeter 中,可以通过发送 POST 请求并传递 `${username}` 和 `${password}` 来测试该接口。 ### 总结 通过上述步骤,可以在 JMeter 中成功配置 CSV 数据集,实现多用户的参数化操作。这种方法不仅提高了测试的真实性和灵活性,还能够帮助发现系统在高并发场景下的潜在问题 [^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值