LoadRunner 在录制脚本时经常会遇到网络连接失败、回放报错等问题,这些问题往往与本地代理配置、防火墙设置或浏览器缓存有关。本文从实际场景出发,提供完整的排查与解决方案。
前言
期末作业需要用LoadRunner对上学期开发的项目做性能测试。我早早的做完了作业并完成了答辩,后面陆续帮助舍友和同学解决了录制等问题,把遇到的问题和解决方案都给总结了一下,发了三篇简单的教程。
在解决了五六位同学的问题后,发现对每个人的问题和方法都不太一样。所以下面这些解决办法,建议可以每个都尝试一下,大概率可以得到解决。
一、录制阶段:无法连接网络问题
问题表现
使用 LoadRunner 12.55 录制时,启动后会提示 "无 Internet 连接"。
排查思路
LoadRunner 录制通过拦截浏览器的 HTTP(S) 流量实现,因此本地防火墙、代理软件都可能干扰流量捕获。应首先排除系统层面的干扰,再根据是否使用代理进行配置。
解决方案一:关闭本地防火墙
适用场景: 所有情况下优先检查
防火墙(如 Microsoft Defender、火绒等)可能会阻止 LoadRunner 的网络监听行为。
- 打开 Windows 安全中心 -> 防火墙和网络保护。
- 临时关闭所有网络配置文件的防火墙。
解决方案二:配置 HTTP 代理(根据本地环境选择)
场景 A:本地未安装任何代理软件
操作步骤:
- 进入 Recording Options -> HTTP Properties -> Advanced。
- 在代理设置中选择使用LoadRunner代理服务器。
场景 B:本地安装了代理软件(如 Clash、Clash Verge)
操作步骤:
配置端口映射
进入 Recording Options -> Network -> Port Mapping,添加目标服务器:- 目标服务器地址:被测网站的域名(如
petad.xuan.cyou) - 目标端口:
2000(或被测网站实际端口,如80) - 筛选级别:选择
代码生成
- 目标服务器地址:被测网站的域名(如
配置代理服务器
进入 Runtime Settings -> Internet Protocol -> Proxy -> Use Custom Proxy:- 代理地址:
127.0.0.1 代理端口:
- Clash:
7890 - Clash Verge:
7897
- Clash:
- 代理地址:
解决方案三:清除浏览器缓存
适用场景: 被测网站在录制浏览器中存在登录态或缓存数据
浏览器缓存可能导致 LoadRunner 无法正确拦截首次请求。
- 在录制浏览器中按
Ctrl + Shift + Delete,清除所有浏览数据。
成功标志
录制开始后,浏览器访问网站时会提示 "您的连接不是私密连接"(SSL 证书警告),点击 "继续访问" 即可正常录制。
二、回放阶段:常见错误及解决方案
错误 1:录制后无代码生成
问题描述: 录制过程正常,但停止后 Action 文件为空。
解决方案: 这通常是端口映射或捕获级别问题,详细排查方法请参考:
错误 2:SSL Protocol Error
完整报错信息: SSL protocol error when attempting to connect with host "127.0.0.1"
原因分析:
回放时使用套接字(Socket)模式与 SSL 握手不兼容。
解决方法:
进入 Runtime Settings -> Internet Protocol -> Preferences,勾选 "Use WinInet replay instead of Sockets"(使用 WinINet 回放而非套接字)。
错误 3:HTTP 415 (Unsupported Media Type)
完整报错信息: 对于"https://petad.xuan.cyou/api/product/update",HTTP 状态代码=415 (Unsupported Media Type)
原因分析:
服务端要求请求头包含 Content-Type: application/json,但 LoadRunner 录制时未自动添加。
解决方法:
在对应的 web_submit_data 或 web_custom_request 函数之前手动添加请求头:
web_add_header("Content-Type", "application/json");三、总结与建议
这软件真是一坨💩













