Loadrunner的学习笔记

文章目录

    • 三大组件
    • Vuser
          • 一、脚本组成
          • 二、Vuser环境的设置
          • 三、创建请求
          • 四、检查点(断言)web_reg_fine
          • 五、关联web_reg_save_param
          • 六、参数化Replace with a Parameter
          • 七、集合点Rendezvous
          • 八、事务Star/end Transaction;ctrl+T/D快捷键
    • Controller
          • 1、创建场景方法
          • 2、Run-Time Settings
          • 3、集合点设置Scenario——Rendezvous
          • 4、启动和停止策略(根据真实场景设置)和设置虚拟用户数Vuser
          • 5、脚本运行
    • Analysis

三大组件

  • Vuser:编写脚本(基于C语言编写,LR提供了一系列API使用)
  • Controller:执行测试
  • Analysis:结果分析器(run-time settings里的功能)

Vuser

一、脚本组成

在这里插入图片描述

vuser_init:脚本初始化,只在开始执行一次
action:方法
vuser_end:结束资源,只在结束循环后执行一次
执行顺序:vuser_init-action1-action2-action1-action2-vuser_end
二、Vuser环境的设置

Run-Time Setting(运行Controller时,里面的设置不会生效)

 Run Logic:设置迭代次数,只针对Run里面的方法有效
 Pacing:设置迭代的间隔时间
 Log:设置请求和响应的报告,选择下面三个才能看到传递参数的请求值和响应值
 思考时间:调试用的,Controller设置是为了模拟用户真实环境用的。不管在Vuser如何设置,场景执行都以Controller设置为准。

Loadrunner的学习笔记_第1张图片
可以通过插入操作或删除操作来设置启动或禁止哪一个Action
Loadrunner的学习笔记_第2张图片

三、创建请求
web_custom_request方法可以发送POST和GET类型的请求
web_submit_data只能发送POST类型的请求
所有web_submit_data方法发送的请求都可以使用web_custom_request来实现
form-data一般用submit,json一般用custom
注意参数存在双引号一定要用转义符 \ 处理
  • Get方法:web_custom_request(自定义请求)
    Loadrunner的学习笔记_第3张图片
  • Post form-data方法:web_submit_data(提交数据)
    Loadrunner的学习笔记_第4张图片
  • Post Json方法:web_custom_request(自定义请求)
    Loadrunner的学习笔记_第5张图片
四、检查点(断言)web_reg_fine
  • 检查点必须要写在检查的方法前,只会针对最近的方法进行检查。
  • 每一个请求都需要设置一个检查点。
  • 可以从返回的日志最尾部查看断言是否通过。
    Loadrunner的学习笔记_第6张图片
五、关联web_reg_save_param
  • 关联函数的位置必须放在它要搜索的web页面请求之前,并且要紧贴着web_url()。比如获取登录Token,则关联放在登录请求前。

1、设置变量名、左边界、右边界
Loadrunner的学习笔记_第7张图片
2、引用变量方法:{变量名}
Loadrunner的学习笔记_第8张图片

六、参数化Replace with a Parameter
1、参数文件最后一行需要一行空行。
2、参数化的两种方法:
把每个变量都单独写入一个dat文件来引用,此时每个参数单独对应一个File名;
把变量全都写在同一个文件中,再引用,参数用逗号“,”隔开,此时每个参数对应同一个File。

参数化方法一:把每个变量都单独写入一个dat文件来引用,此时每个参数单独对应一个File名;此方法操作时更直观,但不利于维护数据。

1、在第一个参数右键选择Replace with a Parameter
Loadrunner的学习笔记_第9张图片
2、修改参数名并点击属性
Loadrunner的学习笔记_第10张图片
3、创建一个放单个变量参数的文件
Loadrunner的学习笔记_第11张图片
4、点击编辑,纵向列出用户名参数
Loadrunner的学习笔记_第12张图片
Loadrunner的学习笔记_第13张图片
5、在第二个参数上进行上述1-4的操作,设置第二个变量的dat文件
Loadrunner的学习笔记_第14张图片
参数化方法二:把变量全都写在同一个文件中,再引用,参数用逗号“,”隔开,此时每个参数对应同一个File。此方法利于维护数据
1、在项目文件夹里创建一个变量和参数关系的dat文件
Loadrunner的学习笔记_第15张图片
2、在第一个参数右键选择Replace with a Parameter
Loadrunner的学习笔记_第16张图片
3、输入参数名点击属性
Loadrunner的学习笔记_第17张图片
4、文件路径选择编辑好的dat文件,按名称选择变量名列
Loadrunner的学习笔记_第18张图片
5、关闭上述参数设置框后,点击确定,此时已经设置好该参数
Loadrunner的学习笔记_第19张图片
6、在第二个参数上重复2-5操作
Loadrunner的学习笔记_第20张图片
Loadrunner的学习笔记_第21张图片
PS.调试运行时,需要把Run-Time Setting的迭代次数进行设置,否则只会运行第一个参数
Loadrunner的学习笔记_第22张图片

  • 设置数据取值方法和更新方法
    Loadrunner的学习笔记_第23张图片
    (1)Select next row(选择下一行方法):
    Sequential默认顺序,每个用户都按照参数化的数据顺序,从上往下一个个取数
    Random随机取数,参数化中的数据每次随机从中抽取
    Unique唯一,唯一的向下取值,只能被使用一次,每个用户取的值之间没有重复,如注册
    Same line as xxx 和xxx列取同一行的值,(行相同)步调一致
    (2)Update value on(更新方式):
    Each iteration 每次迭代时取值 (常用)
    Each occurrence 每次遇到该参数时取值
    Once 取值仅一次,脚本运行过程中只取值一次值的是:一次选择,终身不变
    (3)When out of values(选择Unique才需要选择,数据不足时取值越界的处理):
    Abort Vuser 放弃虚拟用户,不再取值
    Continue in a cyclic manner 以循环的方式继续,当参数化文件中的值取完最后一个值后,又从参数化文件的第一行开始取值
    Continue with last value 当参数化文件中的值取完最后一个值后,持续一直最后一个值
七、集合点Rendezvous

1、在脚本中设置集合点(集合点设置在请求前,只对最近的请求有效)
Loadrunner的学习笔记_第24张图片
2、Controller设置集合点执行策略(请跳转Controller部分的第3点)

八、事务Star/end Transaction;ctrl+T/D快捷键
默认把一个请求作为一个事务。也可以把几个请求设置为一个事务。
需要在请求前后添加开始和结束事务,如果几个请求为一个事务时,就在第一个请求开头和最后一个请求结尾添加事务。
同一个事务,开始事务和结束事务的名字要一直。
根据检查点(断言)状态来判断,一错就错,全对才对。

1、在请求前添加开始事务,同样的在事务的最后一个请求后添加结束事务
Loadrunner的学习笔记_第25张图片
Loadrunner的学习笔记_第26张图片

Controller

1、创建场景方法

方法一:Run Load Tests;
Loadrunner的学习笔记_第27张图片
Loadrunner的学习笔记_第28张图片

方法二:在脚本中Tools-Create controller Scenario
Loadrunner的学习笔记_第29张图片

手动场景Vuser数:虚拟用户数,不是并发用户数,只有设置集合点才会发生并发,用方法1)时其默认设置为10。
Load Generator(压力生成器),IP地址是指压力机,可以操作其他机子。
Group Name(场景组):脚本。

Loadrunner的学习笔记_第30张图片

2、Run-Time Settings

Loadrunner的学习笔记_第31张图片

3、集合点设置Scenario——Rendezvous

设置集合点执行策略Policy:每个集合都可以单独设置
Loadrunner的学习笔记_第32张图片
Vuser表示虚拟用户数
Loadrunner的学习笔记_第33张图片Loadrunner的学习笔记_第34张图片

4、启动和停止策略(根据真实场景设置)和设置虚拟用户数Vuser

Loadrunner的学习笔记_第35张图片

5、脚本运行

Loadrunner的学习笔记_第36张图片
LR靠持续时间来运行,和循环次数无关
Loadrunner的学习笔记_第37张图片

Analysis

在Controller界面打开方式:1、Results——Analysis Results;2、快捷图标
在这里插入图片描述

  • 数据分析

1、Sunmary Report概要报告
Statistics Summary统计概要
total throughput(bytes) 总吞吐量,即总共花费的上传+下载的网络带宽
(注意Jmeter的聚合报告吞吐量指Tps,服务器处理能力的指标)
total hits 总点击数,总共发出去的请求,一般和TPS、Througput成正相关
average hits per second 每秒点击数/请求数,等于总点击数/总运行时间

Transaction summary事务摘要
90 Percent即90%Line

2、Graphs图表

  • Running Vusers:用户的运行情况
  • Hits per Second:每秒点击数
  • Thoughput:网络吞吐量
  • Transaction Summary:事务的柱状图
  • Average Transaction Response Time:平均响应时间
  • Rendezvous集合点
  • Transaction Per Second即TPS

添加图表的方法:
Loadrunner的学习笔记_第38张图片
合并图表——多表分析(Ctrl+M)
Loadrunner的学习笔记_第39张图片
3、把图表形成Html的报告
Reports——Html Report

你可能感兴趣的:(性能测试)