### LoadRunner 学习笔记详解 #### 一、VirtualUserGenerator 录制脚本 VuGen **1.1 创建与配置脚本** - **新建脚本:** 在LoadRunner的VirtualUserGenerator (VuGen) 中创建一个新的脚本项目,通常会选择HTTP/HTML协议来进行录制。在录制之前,可以预先配置好录制的选项,比如指定录制过程中使用的浏览器类型。 - **开始录制:** 输入待测试应用程序的URL地址,例如`http://127.0.0.1:1080/WebTours/`,并选择合适的浏览器进行录制。为了确保录制环境的稳定性和准确性,建议使用LoadRunner自带的测试工具来模拟实际的测试环境,例如通过`samples→web→startwebserver`来启动一个简单的测试服务器。 **1.2 测试脚本的运行** - **运行设置:** 在运行脚本之前,需要在Vuser→Run-time Settings中进行必要的设置,如迭代次数、操作之间的停顿时间等。合理的停顿时间可以模拟真实用户的使用行为。 - **运行模式:** 运行脚本时有两种模式可以选择,即动态运行和静态运行。动态运行模式下,脚本运行时会在界面上高亮显示当前执行的代码行;而静态运行则不会展示运行过程,仅能看到最终的结果。 - **查看运行状态:** 可以通过View→Animated Run来开启动态运行模式,观察脚本的具体执行情况。 #### 二、运行脚本 **2.1 运行逻辑设置** - **迭代次数:** 设置Run-time Settings中的Run Logic选项,定义脚本执行的次数。 - **停顿时间:** Pacing选项用于设置每次操作间的停顿时间,通常使用随机停顿时间更加符合实际情况。 - **实时图像显示:** Tools→General Options→Display设置可以控制是否在运行时显示实时的图像界面。 **2.2 脚本运行** - **单击Run按钮:** 根据设定的迭代次数运行脚本。 - **动态运行与静态运行:** 动态运行模式可以在脚本运行过程中看到当前正在执行的代码行被高亮显示;而静态运行则看不到具体的执行过程。 #### 三、HTML与URL脚本的区别 - **HTML脚本:** 为每个用户的请求生成单独的函数,使得脚本更为直观易读。 - **URL脚本:** 记录所有的操作请求,包括非HTML程序,脚本通常较长。 - **选择脚本类型:** 在Recording Options→Recording中进行设置,或在录制前通过左下角的Option进行选择。 - **特定情况下的脚本选择:** 包含JavaScript、HTTPS的程序推荐使用URL方式录制。当HTML录制遇到问题时,可以尝试切换到URL模式。 #### 四、关联 - **定义:** 关联用于处理脚本中的动态值,简化代码结构。 - **自动关联设置:** 在Tool→Recording Options→Correlation中勾选自动关联选项。 - **手动关联:** 当脚本运行失败时,可以使用搜索关联功能来进行手动关联。 - **关联函数:** `web_reg_save_param`是常用的关联函数之一。 - **注意事项:** LoadRunner 11版本中的自动关联可能存在bug。 #### 五、参数化 - **实现方式:** 在脚本中插入参数,例如`"Name=pass1","Value=ssss",ENDITEM`,然后通过右键点击参数化属性设置变量名等属性。 - **数据存储:** 参数化的数据通常存储在脚本根目录下的`.dat`文件中,也可以选择存储在数据库或其他文件中。 - **循环执行:** 设置Run-time Settings中的Run Logic来定义脚本的循环次数。 - **日志记录:** 设置Run-time Settings→Log→Extended Log→Parameter Substitution来记录参数化的日志信息。 #### 六、检查点 - **启用:** 在Run-time Settings→Preferences中启用图像和文本检查点。 - **性能影响:** 使用检查点可能会影响脚本的运行性能。 - **插入检查点:** 使用Insert→New Step→Web Checks→Text Check来添加文本检查点。 - **查找函数对比:** `web_reg_find`和`web_find`都是常用的查找函数,但它们的工作原理和应用场景不同。 - `web_reg_find`: 用于先注册后查找,常用于注册和查找操作,记录查找匹配的次数。 - `web_find`: 用于查找前面的请求结果,一旦找到匹配项就会立即返回。 #### 七、调试函数 - **日志打印:** 使用`lr_output_message`函数来打印调试信息。 - **动态运行模式:** View→Animated Run可以开启动态运行模式,便于观察脚本执行过程。 - **错误定位:** 通过双击错误日志行或者选中错误日志行后按F1来快速定位到出错代码行。 #### 八、错误处理 - **自动处理设置:** 在Run-time Settings→Miscellaneous→Error Handling中进行设置。 - **自定义错误处理:** 使用`lr_continue_on_error(1)`和`lr_continue_on_error(0)`来控制脚本在遇到错误时的行为。 - **示例代码:** ```vb Action() { lr_continue_on_error(1); Web_link(….); // 忽略这句的错误 lr_continue_on_error(0) lr_output_message(“xxx”); Return 0; } ``` #### 九、负载测试场景 - **场景设计:** 在Controller中设计负载测试场景,加载已编写好的脚本。 - **配置负载生成器:** 配置负载生成器的数量、地理位置等参数。 - **设置场景:** 定义并发用户数、到达率、持续时间等关键指标。 - **监控与分析:** 利用LoadRunner的监控工具对测试过程进行监控,并对结果进行详细分析。 以上内容涵盖了LoadRunner的基础使用方法以及一些高级技巧,包括脚本录制、参数化、关联、检查点等功能的应用,旨在帮助测试工程师更好地掌握LoadRunner的使用技巧,提高自动化测试效率和质量。
- 粉丝: 0
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助