Loadrunner 控制器教程:手动和目标导向场景
⚡ 智能摘要
LoadRunner 中的 Controller 将完成的 VuGen 脚本转换为正在运行的负载测试:它组装 VUser 组,将它们分布到负载生成器上,安排负载递增,并在场景执行时实时传输结果。
什么是控制器?
控制器,顾名思义,是一个用于“控制”整体负载测试的程序。它负责帮助……ping 您可以使用已创建的 VuGen 脚本运行性能测试设计。它允许您覆盖运行时设置、启用或禁用思考时间、设置汇合点、添加负载生成器并控制每个生成器可以模拟的用户数量。它会自动生成执行结果转储,并实时显示负载测试的运行“当前状态”。
让我们来详细了解一下 LoadRunner 控制器。
品牌注解: 以下屏幕截图来自惠普时代的版本,该产品后来被Micro Focus收购,现在以以下品牌销售: OpenText 专业性能工程控制器、VuGen、负载生成器和分析工具的名称和工作流程保持不变,因此这里的每个步骤仍然适用。
如何启动控制器
要启动 Controller,请转到“开始”菜单 ->“HP 软件” ->“HP LoadRunner” ->“Controller”,如下图所示:
启动后,您将看到瞬间出现的启动画面。下面显示了一个快照:
截图会自动跳转到控制器的主窗口。在讨论屏幕的主要组成部分之前,我们先来看一下主窗口。
如果“新场景”屏幕没有自动出现(在您更改首选项后),您可以单击文件菜单下的新建按钮,或单击 按钮。或者,您也可以单击 Ctrl + N。菜单已显示如下,以供参考。
类似地,要打开现有或之前创建的场景,您可以使用 Ctrl + O 或 点击图标,即可打开一个标准对话框浏览文件。LoadRunner 场景文件的扩展名为 *.lrs
Controller 中有两种类型的场景。
- 手动场景
- 目标导向场景
手动场景可以进一步或可能不具有百分比模式。我们将详细讨论每一个。
模拟手动场景
手动配置方案是静态的,可以更好地控制局面。您可以决定执行哪个事务、执行多少次以及持续多长时间。
根据测试组合的组成,您可以看到应用程序行为,例如点击次数、响应时间等。
稍后您将了解手动场景与目标导向场景有何不同。
为了创建手动场景,请从“选择场景类型”中选择手动场景
现在,让我们首先使用非百分比模式。请看下面的快照:
您可以直接从上面的屏幕中选择要添加到场景中的脚本。但是,通常的做法是稍后添加脚本。
单击“确定”按钮继续。
这将创建一个空白场景并将其加载到主屏幕。您会注意到“保存”按钮现在已启用。请查看下面的快照:
同样,如果您在选择场景类型时选择了百分比模式,屏幕会略有不同。它将显示用户百分比分布,而不是用户数量。控制器会自动按指定百分比分配用户。
其余部分相同。请参阅下面的快照:
如果您一开始没有创建场景,您将看到如下工具栏:
你可以点击 按钮创建一个新的空白场景。创建场景后,您可以点击
按钮保存场景或按 Ctrl + S。同样,您可以点击
按钮从本地计算机驱动器打开已经存在的场景。
剩下的按钮只是调用 LoadRunner 的其他组件。 按钮会调用 VuGen 和
按钮会启动 LoadRunner 分析。
添加虚拟用户脚本或组后,您会注意到主题工具栏将显示额外的图标。新的工具栏如下所示:
新的工具栏有 2 个附加控件。
此 按钮打开所有加载列表 Generators。在我们的例子中,我们使用“localhost”作为生成器。这意味着您的本地计算机将被 Controller 使用,以及 Generator 模拟虚拟用户负载。网络虚拟化设置可通过点击
图标。网络虚拟化要求您的机器上安装 Shunra NV for HP 软件 8.6 版或更高版本。此集成通过虚拟化负载和性能测试环境中的生产网络条件来提高测试准确性。要将 Shunra NV for HP 软件整合到您的测试环境中,请联系您的 HP 服务代表。
版本说明: 惠普于 2014 年收购了 Shunra,该功能现在作为供应商自己的网络虚拟化组件提供,因此当前的安装不再需要单独的 Shunra 产品。
现在您已经创建了一个新的空白 LoadRunner 场景,请记下它自带的默认配置:
安排人: EventXtra XNUMX大解决方案
运行模式: 真实世界时间表
由于虚拟用户脚本将由一组虚拟用户运行,因此它也被称为“组”。“组名称”列将显示添加后的虚拟用户脚本的名称。让我们将虚拟用户脚本添加到此场景中。
当场景完全创建后,您将在场景组下看到以下工具栏:
您可以点击 工具栏中的图标添加 VUser 组。
当您单击“组名”列下的单元格时,它将打开一个小框,即 – 在这里您可以看到最近的 VUser 脚本的快速列表以及浏览按钮。请参阅下面的屏幕截图。
您可以从列表中选择,也可以简单地从所需目录中浏览。如果您单击浏览按钮,它会打开一个类似于 MS 通用对话框的对话框。请参阅下面的快照:
如您所见,您可以浏览虚拟用户脚本、图形用户界面脚本或 QTP 这里是脚本。请记住,GUI 或 QTP 脚本只能实例化单个用户,不能用于“负载模拟”。你能解释一下为什么吗? QTP 脚本在负载场景中可用吗?
正确答案是: QTP 可以将脚本添加到加载场景中以进行演示。trac信息:
由于 LoadRunner 脚本基于请求和响应机制运行,因此这不包括 UI 和数据渲染的持续时间。 QTP 脚本将提供一个负载下真实用户体验的示例。当然, QTP 脚本需要通过描述性编程来实现所有交易。
如果右键单击左侧的灰色区域,您将看到一个小菜单,如下面的屏幕截图所示:
您可以点击添加组来浏览您的 VUser 脚本。
要删除群组,请点击 工具栏中的按钮或右键单击组并选择删除组——如下所示:
提示: 您也可以点击 按钮可查看特定于所选组的运行时设置。您可以选择多个组(按住 Ctrl 键并单击)以一次将运行时设置应用于所选组。
在工具栏中,您可以单击“详细信息”按钮 [ ] 查看与 VUser 组相关的所有详细信息。
如果单击“更多”,它将显示一个带有 3 个选项卡的面板。第一个选项卡“Rendezvous”将默认打开:
您也可以在“虚拟用户”选项卡中查看虚拟用户列表。如果您已为虚拟用户分配了 ID,则会在此处看到它们。
您还可以查看脚本文件夹中所有文件的列表。这样就无需导航到最终目录,并且只显示相关文件。
我们将单独研究如何安排一个小组。
场景准备就绪后,您可以点击 按钮开始执行您的场景。单击播放按钮后,您会注意到控制器从“设计”选项卡切换到“运行”选项卡。
控制器设计视图还允许您在运行场景时查看脚本。这在遇到错误时非常有用。但是,您对脚本所做的任何更改都不会反映在正在运行的场景中。即使场景没有运行,您也需要查看详细信息并单击“刷新”按钮才能使更改生效。
您可以通过点击直接在 Controller 中查看脚本 按钮。
同样,您可以通过点击 按钮。
配置完成后,您可以点击 按钮或进入“运行”选项卡并点击
按钮。
在场景开始执行时,Controller 会隐式创建一个临时目录来转储结果。如果该目录已经存在,则会收到提示:
如果选择“是”,之前的转储将丢失。如果选择“否”,您将看到下面的窗口。如果愿意,您可以选择为每个结果创建一个新目录。但是,请考虑在那之后不久空间不足的情况。
只要您点击“确定”,您的方案就会开始运行。您将看到用户从“待处理”列移至“初始化”列,依此类推。
示例执行如下:
您可以点击“已传递的交易”以打开一个新窗口。在这里,您可以检查您在整个脚本中应用的交易的状态。
同样,您可以单击左侧的任意图表名称来打开任意图表。
在窗口底部,您可以看到哪些交易正在通过,迄今为止任何用户所花费的最短时间、最长时间、平均时间和标准差。
您可以选择并排整理结果或仅在场景结束后整理结果。要切换,请单击结果菜单,您将看到以下菜单。
如果您希望启用排序功能,您可以保持选中状态。
模拟以目标为导向的场景
面向目标的场景本质上是动态的 - 这意味着,它会不断改变服务器上模拟的总体负载。您可以设置一个目标,例如,您希望目标服务器实现的最大点击次数、事务的最大响应时间等。
基于上述数值,您可以进行一些分析,例如在可接受的响应时间内,您的应用程序支持的最大用户数。同样,您也可以计算出在服务器访问量达到 X 次之前,应用程序能够支持的最大连接用户数。
在这种情况下,控制器会自动改变服务器的用户数量,因此,您几乎无法控制用户运行的次数或持续时间。
单击新建以创建新场景并选择面向目标的场景。
将出现以下屏幕:
添加 VUser 组的过程与手动场景完全相同。
目标导向场景的关键区别在于,顾名思义,你需要设定一个目标。控制器随后会自动调整虚拟用户数量,直到达到该目标为止。
虽然大部分界面与手动场景非常相似,但某些屏幕的显示方式有所不同,尽管它们执行的操作相同。例如,要添加虚拟用户组或虚拟用户脚本,请单击 按钮。这将打开以下窗口:
在这里,您可以选择最近的脚本,浏览脚本,或者点击“录制”按钮创建新脚本。
单击“确定”关闭窗口。
根据需要,您可以点击 按钮查看所选组/VUser 脚本的详细信息。
点击 按钮将从当前场景中删除所选的 VUser 组。仅当您保存后,更改才会被保存。
点击 此按钮将打开运行时设置,正如我们在 VuGen 中学习的那样。但是,如果您在此处覆盖(或修改)运行时设置,则更改仅对当前场景有效。如果您删除脚本并重新加载,或点击刷新(在详细信息视图中),则所做的任何更改都将丢失。这将重新加载创建脚本时保存的运行时设置。
您也可以点击 按下此按钮可在 VuGen 中打开选定的 VUser 组。
如果您希望配置负载 Generators(我们的下一个主题),您可以点击 按钮。
下表汇总了之前提到的两种情景类型之间的差异。
| 方面 | 手动场景 | 目标导向场景 |
| 谁决定负荷 | 你确实如此,VUser 逐个 VUser | 控制器会这样做,以达到你的目标 |
| 自然 | 一旦设计完成,便不再具有静态特性。 | 动态的,在运行过程中会变化 |
| 您定义 | 交易次数、虚拟用户数、持续时间 | 目标,例如每秒点击次数或响应时间 |
| 额外模式 | 百分比模式按份额分配虚拟用户 | 无百分比模式 |
| 最适合 | 重现已知的测试混合物 | 找到目标能够承受的负荷 |
面向目标的场景的执行与手动场景相同。
配置负载 Generators
有两种方式配置负载 Generators.
单击“添加组”(添加虚拟用户脚本)后,您将看到以下窗口:
您可以点击与加载相对应的添加 Generator 命名并浏览您的负载 Generator或者,您也可以直接输入“localhost”,然后开始使用您的控制器机器作为负载。 Generator.
如果您点击“添加...”,您将看到以下窗口:
您可以点击更多查看与加载相关的更多设置 Generator. 通过不同的标签来建立更多的理解:
以上是对 Run-Time Settings 的配置。可以看到,一次最多可以初始化 50 个用户。
以下是 VUser Limit 的配置。
如果您希望恢复默认设置并放弃所做的任何更改,请单击“默认值”。单击“确定”按钮保存更改并关闭窗口。
添加和配置 Load 的另一种方法 Generator方法是点击 EventXtra XNUMX大解决方案 菜单并单击 载荷 Generators.
这将导致主窗口 Generators. 在这里您可以看到所有负载的状态 Generators. 该名称指的是……的名称 Generator。状态是当前状态,无论发电机是否已准备好使用。平台会告诉 Opera发电机系统,可 Windows or Unix的 仅。类型表明它是本地生成器还是基于云的生成器。请看下面的快照:
平台说明: 这个 Windows-or-Unix 措辞反映了此处所示的版本。当前的 LoadRunner 版本也会在 Linux 发行版(例如)上安装负载生成器。 Ubuntu 服务器 22.04 LTS 和 RHEL 9。
要添加另一个生成器,您需要单击“添加”按钮。单击“添加”后,您将看到与上面讨论过的相同的屏幕。
一旦生成器配置完毕,请单击“关闭”按钮关闭屏幕。
安排小组
在运行场景之前,您需要配置计划。您可以按场景或按组进行计划。这两种方式又可以进一步细分为实际运行计划和基本运行计划,称为运行模式。
如果您按场景安排并创建真实世界计划,您将看到在全局计划区域中出现以下选项:
但是,如果您安排一个场景并创建一个基本计划,您将看到下面的窗口。您能发现不同吗?
您还可以按组安排。这会将配置应用于组级别。这可以进一步分为真实世界和基本运行模式。
同样,您可以将运行模式更改为基本计划。使用您的测试设计技能来找出两者之间的差异。以下是参考:
您是否注意到场景计划工具栏中出现了一个新图标?
以下是供您参考:
仅在组配置的情况下才会出现集合图标。
制定服务级别协议 (SLA)
您可能已与客户签订了服务级别协议 (SLA)。LoadRunner 或 Controller 中的 SLA 使您有机会根据 SLA 测试您的应用程序。请记住,常规(非 SLA)场景允许您运行各种类型的场景,以便查找问题及其根本原因;而您的客户可能只想在 SLA 的约束下测试您的应用程序,以查看其是否按约定运行。trac是或否。
从控制器的主设计视图中,找到 SLA 工具栏;它位于右上角,如下所示:
点击 按钮并会打开以下窗口:
点击 按钮。
注意新窗口。在这里您可以选择 SLA 的测量值。在我们的示例中,我们采用事务响应时间。请看一看:
点击 按钮。
在下一个窗口中,您可以选择将应用上述测量的交易。我们仅使用主要交易,即 01_Signup
这将有助于删除打开主页和其他不太重要的交易。
看一下窗口:
点击 按钮。
在新窗口中,您可以选择阈值的百分位数。如果您选择了多个交易,您可以点击 按钮。查看下面的窗口:
点击 按钮。
下一个屏幕是一个简单的闭包。单击 按钮关闭 SLA。
点击后 ,您将看到控制器的主设计窗口,其中显示 SLA。看一下:
您可以点击 按钮查看 SLA 详细信息。将打开以下窗口:
点击 按钮关闭上述窗口。
如果您希望删除现有的 SLA,可以点击 按钮。点击后,您将看到以下确认消息:
如果你点击 按钮后,您将看到 SLA 的高级选项。
建议您使用默认选项,即内部计算。 Tracking 就此打住。请看截图:
如果你使用内部计算 Tracking 周期分析自动设置 trac确定 SLA 状态的关键周期。此选项的最低要求 trac国王周期设置为 5 秒。
另一方面,你选择 Tracking 将周期设置为所需的秒数。只需选择下一个单选按钮即可。
在执行基于 SLA 的场景时,执行过程完全相同。
控制器上的视频
以下演示涵盖了相同的控制器屏幕在动态中的显示。
点击 开始 如果视频无法访问
控制器位于中间 LoadRunner架构脚本从 VuGen 到达后 相关 和 参数化以及结果转储信息 LoadRunner 分析。 阅读 性能测试 和 负载测试 为了更广泛的进程。








































