LoadRunner 脚本录制失败的常见问题及解决方法:
一,环境和兼容性问题:
报错:
录制时无任何请求被捕获(事务数为0),或VuGen无法启动浏览器。
原因:
1. 浏览器版本不兼容或不受支持。
2. VuGen权限不足,无法注入代理或挂载录制模块。
3. 杀毒软件、防火墙或第三方浏览器插件干扰。
解决方法:
1. 核对兼容性:确保使用LoadRunner官方文档支持的浏览器(如特定版本的IE/Chrome/Edge)。
2. 以管理员身份运行:始终以管理员权限启动VuGen。
3. 关闭干扰项:临时关闭杀毒软件、防火墙及浏览器非必要插件。
文章来源:卓码软件测评
精彩推荐:点击蓝字即可
▲软件负载测试▲API自动化测试▲软件测试▲第三方软件测试▲软件性能测试▲软件测试机构
二,浏览器和代理问题
报错:
1. 录制不到本地应用或 localhost、127.0.0.1的请求。
2. 浏览器启动但录制不到内容,或代理设置被更改。
原因:
1. 本地地址录制限制:默认设置下,代理可能无法正确捕获发往本地回环地址的流量。
2. 代理配置失效或冲突:系统或浏览器有其他代理(如VPN、自定义代理),或录制过程中更改了设置。
解决方法:
1. 修改地址或设置:将应用地址改为本机实际IP;或在录制选项中启用 “使用LoadRunner代理录制本地应用程序” 。
2. 重置代理配置:关闭所有外部代理/VPN。在VuGen录制选项(Recording Options)> 网络(Network)> 代理服务器(Proxy Server) 中,确保配置正确且端口未被占用。切勿在录制过程中更改浏览器代理设置。
三,认证和安全问题
报错:
使用LR代理录制模式(LR Proxy Recording)时,无法录制需要NTLM认证的应用,事件数为0。
原因:
NTLM认证窗口未弹出:LR代理模式在遇到NTLM认证时,默认使用当前Windows账户凭据。如果服务器不接收该账户,但又未弹出窗口让用户输入其他凭据,会导致认证失败,录制中断。
解决方法:
1. 首选方案:改用非代理的Hook录制模式。
2. 官方修复:根据官方知识库文章,下载并替换特定DLL文件(如 HP.LR.HTTPProxyEngine.dll)的私有修复补丁。
三,协议和应用问题
报错:
1. 报错 “Requested form not found [MsgId: MERR-27979]”。
2. 步骤丢失,关键操作(如AJAX请求、文件上传)未被记录。
3. 录制Web Services脚本时乱码或回放失败。
原因:
1. 录制级别选择错误:对于大量使用JavaScript、HTTPS或非浏览器组件的应用,使用“HTML-based script”模式可能无法正确捕获请求。
2. 动态内容与异步请求:JavaScript动态加载的内容或快速的连续操作,可能因未触发完整请求或节奏过快而漏录。
3. 字符编码与协议缺陷:早期版本录制中文系统Web Services时,可能自动修改WSDL文件头编码导致问题。
解决方法:
1. 调整录制级别:在 “Recording Options” > “Recording” 中,将HTML-based script”切换为URL-based script模式重新录制。
2. 优化录制操作:操作后稍作等待确保页面加载完成。对于复杂应用,可在Recording Options> Network中启用Socket level data捕获底层流量。
3. 应用补丁与检查编码:检查并安装LoadRunner官方发布的相应补丁。确保服务器和脚本的字符编码设置一致。
提升录制稳定
为避免问题建议:
环境:建立干净的专用测试机,固定操作系统、浏览器及VuGen版本,并禁用自动更新。
分段录制:将长业务流程(如登录→搜索→下单)拆分成多个小段录制和调试,成功后再合并。
清理:录制前清空浏览器缓存和Cookie,从一个全新的未登录状态开始。
录制并调试好第一个稳定版本后,将其保存为项目模板,作为后续脚本的标准。
调试
当排查无效时,可以尝试:
对比抓包:使用Fiddler等抓包工具,同时抓取你手动成功操作时的网络请求和LoadRunner录制时的请求,逐项对比(如URL、请求头、请求体),找出差异。
查看日志:在VuGen的运行时设置(Run-Time Settings)中,开启扩展日志(Extended Log) 并勾选 参数替换(Parameter Substitution) ,回放时通过详细日志定位具体失败请求和服务器响应。
关联数据:如果应用使用会话ID、令牌等动态值,必须进行关联。使用VuGen的扫描并关联(Scan for Correlation) 功能或手动添加web_reg_save_param函数来捕获并替换这些值。