当前位置: 首页 > 质量专栏 > 软件测试工具LoadRunner使用教程:性能测试脚本回放
软件测试工具LoadRunner使用教程:性能测试脚本回放
2025-11-17 作者cwb 浏览次数33

LoadRunner脚本回放指南,包括主要概念、具体操作、验证方法和常见问题处理。掌握脚本回放是保证后续性能测试-结-果准确的重要一步。


理解脚本回放

脚本回放指的是通过LoadRunner的VuGen(Virtual User Generator),模拟用户操作,向服务器发送请求,并验证服务器响应是否正确的过程。这不仅能验证脚本本身的正确性,也是后续进行场景压力测试的基础。


回放操作步骤

启动回放:在VuGen中完成脚本录制或编辑后,点击工具栏上的运行按钮或通过菜单 Replay > Run 开始回放。

查看回放日志:回放过程中,重点关注Replay Log窗口。这-里-会-显-示脚本执行的详细信息,是排查问题的主要依据。

-检查-回-放-结-果:脚本回放结束后,会弹出Test Results窗口(或Replay Summ-ar-y-)--显-示-整-体结果,但不能仅凭"Pass"状态判断成功,需结合其他方式深入验证。


验证回放成功

保证脚本回放成功,需要多方面验证:

检查重要请求:在VuGen的Tree View模式下,通过 "Visual Test Results" 查看每个请求的服务器返回状态(如HTTP 200),并对比录制和回放时服务器返回内容的快照。

使用检查点验证内容:通过在脚本中添加检查点函数(如 web_reg_find),验证响应中是否包含预期重-要文本(例如"登录成功"),这是保证业务逻辑正确的重要。

确认事务状态:如果脚本中定义了事务(Transaction),回放成功后,在结果中会明确显示事务状态为 "Pass"。

排查常见回放问题

脚本回放失败常见于动态数据、参数化及运行时设置。


处理动态数据(关联)

问题根源:服务器返回的动态数据(如SessionID、Token)在回放时已失效,导致后续请求失败。

解决方案:使用关联(Correlation) 技术捕获这些动态值。

定位动态数据:在Tree View的录制和回放快照对比中,或在Response的原始数据(Raw Data)里查找变化的数值。

使用关联函数:在依赖动态数据的请求前,插入web_reg_save_param函数,并设置唯一的左、右边界(LB/RB)来精确定位和捕获该值。

替换脚本:将脚本中所有使用该硬编码动态值的地方,替换为上一步定义的参数。


关联函数示例:


c

// 在获取动态值的请求前注册关联函数

web_reg_save_param("SessionID", "LB=name=\"session\" value=\"", "RB=\"", "Search=Body", LAST);

// 接下来是具体的请求,如web_submit_data等

// 然后在后续请求中使用 {SessionID} 参数


检查参数化数据

若脚本进行了参数化,回放失败需检查:

参数文件路径是否正确,特别是在脚本移动到其他机器时。

参数文件的数据格式是否正确(如逗号分隔,无多余空格)。

参数的更新方式和数据量是否满足测试逻辑(如唯一性要求)。


调整运行时设置

通过 Run-Time Settings 调整虚拟用户行为:

日志设置:调试时可开启扩展日志(Extended Log),如记录"Parameter substitution"来观察参数替换值。

思考时间:可根据测试目标忽略思考时间(压测极限性能)或按比例调整。

错误处理:设置遇到错误时继续执行或暂停,便于问题定位。


尝试不同运行时引擎

遇到一些难以解决的关联或回放错误(如Error -26377),可以尝试在 Run-Time Settings > Internet Protocol > Preferences > Advanced 中勾选 "WinInet replay instead of sockets" 选项。这相当于更换了网络通信的实现方式,有时能解决兼容性问题。


系统化调试步骤

建议按照以下步骤,让回放调试工作更高效:

保证基础脚本可回放:录制后先不做任何增强,回放一遍确认基础脚本无误。

逐项增强并验证:每进行一项重要脚本增强(如参数化、添加检查点、处理关联),都执行回放进行验证。

仔细分析回放日志:回放后仔细查看回放日志,重点关注错误信息、参数替换值和检查点结果。

迭代和验证:重复步骤2和3,直到脚本能稳定、正确地完成所有业务逻辑。


回放和调试技巧

使用断点和单步执行:在VuGen的脚本视图中设置断点,然后使用单步执行(F10),可以观察脚本每一步的执行情况,特别有助于复杂逻辑的调试。

输出调试信息:在脚本中使用 lr_output_message 或 lr_error_message 函数输出变量或参数的值,是跟踪脚本执行和定位问题的有效手段。


按照以上方法和步骤,你应该能更加系统化、高效地完成LoadRunner脚本的回放和调试。请记住,耐心和细致是调试工作的重要。


文章标签: 软件测试 测试工具 软件应用性能测试 应用性能测试 接口性能测试 软件性能测试 性能测试
咨询软件测试