使用JMeter录制Web应用用例报错:[52293] Not implemented (probably used https)
JMeter 5.3录制HTTPS应用报错及登录录制失败解决办法
报错信息
ERROR o.a.j.p.h.p.Proxy: [52293] Not implemented (probably used https) java.lang.IllegalArgumentException: Only ASCII supported in headers (perhaps SSL was used?) at org.apache.jmeter.protocol.http.proxy.HttpRequestHdr.parse(HttpRequestHdr.java:138) ~[ApacheJMeter_http.jar:5.3]
环境信息
- 浏览器:Chrome
- 已下载ApacheJMeterTemporaryRootCA.crt证书
- 环境变量配置正常
- Java版本:1.8.0_281
解决步骤
1. 确保Chrome证书安装正确
- 导入证书时必须将其放入「受信任的根证书颁发机构」存储:
- 打开Chrome设置 → 隐私和安全 → 安全 → 管理证书
- 点击「导入」,选择下载的
ApacheJMeterTemporaryRootCA.crt - 选择「将所有证书放入下列存储」,点击「浏览」选中「受信任的根证书颁发机构」
- 完成导入并重启Chrome
2. 对齐JMeter与Chrome的代理配置
- JMeter的HTTP(S)测试脚本录制器端口(如默认8888)需与Chrome代理设置完全一致:
- Chrome设置 → 系统 → 打开计算机代理设置 → 手动设置代理
- 地址填
127.0.0.1,端口填JMeter录制器的端口,保存设置
- 确认JMeter录制器的「目标控制器」选择正确的线程组,避免请求录制后无法找到对应位置
3. 配置JMeter支持UTF-8请求头
- 打开JMeter安装目录下
bin文件夹中的jmeter.properties,确保以下配置未被注释:httpclient.parameters.file=hc.parameters - 打开同目录下的
hc.parameters,添加一行:http.protocol.element-charset=UTF-8 - 保存文件后重启JMeter,解决非ASCII请求头解析错误
4. 验证Java环境兼容性
- 执行命令
java -version和javac -version,确认输出均为1.8.0_281,避免多Java版本冲突 - 确保
JAVA_HOME环境变量指向正确的JDK安装路径
5. 使用JMeter录制模板简化配置
- 打开JMeter → 文件 → 模板 → 选择「Recording」模板 → 创建
- 模板会自动配置好线程组、录制控制器、代理服务器等组件,减少手动配置失误
内容的提问来源于stack exchange,提问作者Muskan Garg
相关产品推荐
相关产品推荐

