【JMeter】JMeter_JDBC脚本中文如何解决乱码

最近学习JMeter使用JDBC压测mysql数据库时,无论增删改查脚本,都会出现中文乱码问题,经高人指点哈哈哈哈,有了解决方案。废话不多说,先来看出现的问题:

1.JMeter脚本及运行结果


2.数据库查询结果



解决思路:
1.关闭Linux防火墙

结果:JMeter脚本请求不乱码了,数据库查询仍然乱码


2.查看并修改数据库编码


结果:数据库查询仍然乱码
说明:character_set_server在linux重启后会失效恢复为latin1

3.查看并修改数据表编码

结果:数据库查询仍然乱码

4.查看并修改数据表字段编码

结果:数据库查询仍然乱码

5.url中添加 ?useUnicode=true&characterEncoding=utf8


结果:JMeter脚本请求不乱码了,数据库查询也不乱码了!!


Done!!完美~~

另外,还有一点就是:
1.如果使用了参数化脚本,参数化脚本的编码和CSV Data Config里配置的编码要一致


解决方案总结就是:
1.关闭Linux防火墙
2.修改数据库、数据表、字段编码为utf8
3.JDBC访问的url中添加 ?useUnicode=true&characterEncoding=utf8
4.如果使用了参数化脚本,参数化脚本的编码和CSV Data Config里配置的编码要一致

转载原文:https://blog.youkuaiyun.com/sylvia2016/article/details/79029631

### JMeter 测试运行时常见问题及解决方案 #### Java Socket 异常处理 当发送请求后返回 `java.net.SocketException: Connection reset` 错误时,这通常意味着测试服务器存在问题。建议访问目标网页进行验证。可能需要调整客户端配置,比如工具的运行设置[^1]。 ```python try: response = requests.get('http://example.com') except requests.exceptions.ConnectionError as e: print(f"Connection error occurred: {e}") ``` #### 中文字符编码错误修正 如果在使用断言功能过程中遇到中文乱码现象,则需修改JMeter属性文件中的默认编码方式。具体操作是在 `jmeter.properties` 文件里找到并取消注释 `sampleresult.default.encoding=UTF-8` 行[^2]: ```bash # jmeter.properties sampleresult.default.encoding=UTF-8 ``` #### CSV 数据文件路径动态指定方法 对于远程机器上执行脚本的情况,可以通过嵌入特定函数来实现CSV参数路径自适应不同环境下的变化。例如利用 `${__BeanShell(import org.apache.jmeter.services.FileServer;FileServer.getFileServer().getBaseDir();)}` 函数获取当前工作目录作为基础路径[^3]: ```properties csvDataPath=${__BeanShell(import org.apache.jmeter.services.FileServer;FileServer.getFileServer().getBaseDir() + "/data/myfile.csv";)} ``` #### JDBC 请求配置缺失修复措施 针对 “JDBC请求中数据源为空”的提示信息,应该确认已正确定义了所需的数据库连接池资源,并确保这些资源能够在实际环境中被正确加载和解析。检查是否存在拼写错误或遗漏的关键字等问题[^4].
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值