淡蓝色的承诺yuanhui.blog.chinaunix.net
淡蓝色的承诺
全部博文(39)
DB2(0)
MySQL(0)
SqlSever(1)
Oracle(3)
其他(0)
LoadRunner(12)
TD(8)
性能测试(0)
UI测试(0)
功能测试(1)
2011年(34)
2010年(5)
格伯纳
技术宅
lxcai76
binggo00
zuyl2016
h3913942
zlpdyfgz
yangyhua
wuxingqu
分类: 项目管理
2011-03-17 09:16:07
面向目标的高级场景在前两课中,您已学习了如何手动创建和运行负载测试。在本课中,您将为测试定义一个要达到的目标。部署应用程序之前,要运行一个验收测试以确保系统能承受预期的实际工作量。您可以定义预期的服务器执行速率,例如每秒点击次数或每秒事务数。该速率或者是由定义应用程序要求的业务分析员来确定,或者是从实际使用的以前版本的应用程序或者其他资源中获得。您可以为生成的每秒点击次数、每秒事务数、或者事务响应时间设置目标, LoadRunner 将使用面向目标的场景自动生成所需的目标。当应用程序在固定负载下运行时,您可以通过监控事务响应时间,查看提供给客户的服务级别。在本课中,您将创建下列面向目标的场景:在使用最少 5 个 Vuser 最多 10 个Vuser 的情况下,在 Web 服务器上生成每秒 3 次的点击次数,并将该负载级别保持 5 分钟。在本课中,您将学习下列内容:? 应该使用哪种目标类型?? 如何创建面向目标的场景?? Controller 窗口(面向目标的场景)概述? 如何定义目标?? 如何确定负载行为?? 应该监控哪些联机图?? 如何运行面向目标的场景?? 是否已达到目标?
应该使用哪种目标类型?在面向目标的场景中, LoadRunner 提供五种不同类型的目标:并发 Vuser 数、每秒点击次数、每秒事务数、每分钟页面数或场景的事务响应时间。? 如果您知道可运行各种业务流程的 Vuser 总数,则可以使用虚拟用户目标类型。? 如果您知道服务器的稳定性,则可以使用每秒点击次数、每分钟页面数或每秒事务数目标类型。? 如果您知道所需的完成事务的响应时间,则可以使用事务响应时间目标类型。例如,如果您希望用户在五秒钟之内登录到您的电子商务站点,请将可接受的最长事务响应时间指定为五秒,并查看可以处理的实际 Vuser 数。如何创建面向目标的场景?要使用组合用户配置文件模拟实际系统,可以将多个脚本分配给场景,并在这些脚本之间分配一定百分比的负载。应该根据期望的负载设置百分比。在本教程中,将仅使用一个 Vuser 脚本模拟一组执行相同操作的用户。1 新建场景。依次选择“文件” > “新建”,或者单击“新建” ,打开“新建场景”对话框。
2 选择场景类型。选择“面向目标的场景”选项。3 选择脚本。从“可用脚本”列表中选择 basic_script,然后单击“添加” 按钮。该脚本将显示在“场景中的脚本”窗格中。单击“确定”。将打开“LoadRunner Controller 设计”视图,其中在“脚本名”列中显示 basic_script。Controller 窗口(面向目标的场景)概述Controller 窗口(面向目标)的“设计”视图包含两个主要部分:? 场景目标? 场景脚本场景目标:在上面的窗格中,您可以看到测试目标、达到该目标要使用的用户数、场景持续时间和负载行为。使用“编辑场景目标”对话框可以对目标设置进行定义。场景脚本:在下面的窗格中,您可以确定 Vuser 脚本、脚本路径、分配到每个脚本的目标的百分比以及负载生成器计算机。可以在此处对场景设置进行配置。如何定义目标?选择了要运行的脚本之后,您需要定义要达到的目标。在本节中,您将创建目标配置文件并定义场景目标。1 打开“编辑场景目标”对话框。单击“编辑场景目标”按钮 ,或者依次选择“场景” > “目标定义”。将打开“编辑场景目标”对话框。2 为目标配置文件指定逻辑名称。单击“新建”,然后在“新建目标配置文件”对话框中键入新目标配置文件名(例如:Hits per Second 3),最后单击“确定”。下拉列表框中将出现新建的目标配置文件名。3 定义场景目标。在“目标类型”框中,选择“每秒点击次数”。在“每秒点击次数目标”框中,输入 3。4 设置要在 LoadRunner 上运行的 Vuser 数目的最大值和最小值。输入 Vuser 数目的最小值 5 和最大值 10。这必须同时对应于要在服务器上创建点击次数的旅行代理数目的最大值和最小值。如何确定负载行为?定义了测试目标之后,您需要设置 Controller 达到目标的方式和时间。用户不可能精确地在同一时间同时登录到系统或从系统中注销。要模拟实际用户,可以使用 LoadRunner 在“加载行为”选项卡中提供的功能,使用户逐渐地登录到系统和从系统中注销。您还会希望服务器在负载下保持一段时间。通过LoadRunner 的“场景设置”选项卡,您可以设置服务器保持在负载下的时间。要定义负载测试行为,请执行下列操作:1 在“编辑场景目标”对话框中,选择“负载行为”选项卡,然后选择“自动”。这将指示 Controller 同时运行所需数目的 Vuser。2 选择“场景设置”选项卡。指定测试在达到目标后继续运行 5 分钟,并选择“继续运行场景,无需达到目标”。在负载达到每秒 3 次的点击次数之后,Controller 将继续运行场景 5 分钟,并按照需要添加或减去一定数量的 Vuser,以使实际度量保持在指定目标的 6% 之内。这将确保服务器保持在此负载下一段时间。3 请勿使用录制的思考时间。在“编辑场景目标”对话框的左下角,请确保已禁用“不更改记录的思考时间”。如果启用该选项, LoadRunner 将使用脚本中录制的思考时间运行场景,这样您可能需要通过增加场景中的 Vuser 数来达到目标。4 关闭“编辑场景目标”对话框。单击“确定”,关闭“编辑场景目标”对话框。“场景目标”窗口中将出现您输入的场景目标信息。应该监控哪些联机图?定义了测试目标和负载行为之后,您将可以对 LoadRunner 监控器进行配置。在测试中,要跟踪服务器上生成的负载,您应该监控每秒点击次数图。要查看服务器在负载下时对客户的响应时间,您还需要监控事务响应时间图。此外,您还可以监控负载对吞吐量图和 Windows 资源图的影响。已配置了每秒点击次数、事务响应时间和吞吐量监控器。要配置 Windows 资源监控器,请按照第 7 课中的步骤执行操作。如何运行面向目标的场景?配置了场景和目标设置之后,您就可以启动测试并监控负载下的应用程序。在本节中,您将运行面向目标的场景和检查测试行为。1 打开 Controller 窗口中的“运行”选项卡。选择屏幕底部的“运行”选项卡。由于场景尚未运行,因此所有的计数器都是零并且所有的图都是空白。在下面的步骤中启动场景后,图和计数器将开始显示信息。2 指定结果目录的名称。依次选择“结果” > “结果设置”打开“设置结果目录”对话框,然后为结果设置输入唯一的名称(例如:travel_agent_3hps)。3 开始运行场景单击“开始场景”按钮 ,或者依次选择“场景” > “开始”。Controller 开始运行场景。您将看到有 5 个 Vuser 已进行加压并开始运行,同时 LoadRunner 尝试生成所需的每秒 3 次的点击次数目标。在测试期间, Controller 将自动开始和停止 Vuser 以保持既定目标。4 查看联机图。每秒点击次数图显示在每一场景运行过程中 Vuser 每秒向 Web 服务器提交的点击次数(HTTP 请求)。您可以看到很快就达到了所需的负载级别。事务响应时间图显示了完成每个事务所花费的时间。监控事务响应时间可以查看服务器在负载下对客户的响应时间,这很重要。您还可以通过在可用图树中选择“吞吐量”,并将其拖至图查看区域来查看吞吐量图。该图显示每一时刻 Vuser 从 Web 服务器接收的数据量。您可以监控服务器的 Windows 资源使用率以探查处理器、磁盘或内存使用率问题。在测试期间进行监控可以帮助您立即确定性能较差的原因。您可以查看 Windows 资源图图例中的度量列表。是否已达到目标?本课的目标是确保系统在期望的实际工作量下,向客户提供可接受的服务级别。要模拟这样的条件,在运行最少 5 个 Vuser 最多 10 个 Vuser 的情况下,将负载目标设置为在场景运行期间达到每秒 3 次的点击次数。在运行 5 到 10 个 Vuser的情况下,如果在场景运行过程中的每一秒中, Vuser 在服务器上的点击次数都为每秒 3 次,那么就达到了目标参数。如果未达到每秒 3 次的点击次数目标,LoadRunner 将显示一条消息,说明无法达到定义的目标。注意: 由于许可证限制您最多运行 10 个 Vuser,因而可能无法达到您的目标。运行测试之后,您应该保存场景设置以供将来使用。要保存场景,请依次单击“文件” > “保存”,或者单击“保存”按钮 然后在“文件名”框中输入场景的名称。
分析场景在前面的课程中,您已学习了如何设计、控制和执行场景的运行。加载服务器后,需要分析运行并确定需要解决的问题,以提高系统性能。在 Analysis 会话过程中生成的图和报告提供了有关系统性能的重要信息。使用这些图和报告,可以轻松地标识和确定应用程序中的瓶颈以及提高系统性能所需的改进。在本课中,您将学习下列内容:? Analysis 会话如何工作?? 如何启动 Analysis 会话?? Analysis 窗口概述? 是否已达到目标?? 服务器的性能是否稳定?? 如何确定问题的根源?? 还可以收集有关场景运行的哪些其他信息?? 如何发布结果?? 结论Analysis 会话如何工作?Analysis 会话的目的是查找系统的性能故障,然后确定这些故障的根源。1 是否满足了测试的预期目标?在负载下,用户终端的事务响应时间是多少?这些事务的平均事务响应时间是多少?2 系统的哪些部分导致性能下降?该网络和服务器的响应时间是多少?3 通过将事务时间和后端监控器矩阵关联起来,您是否能找到可能的原因?在以下部分中,您将学习如何打开 LoadRunner Analysis 以及生成和查看图及报告,这将有助于您找出性能问题并确定该问题的根源。如何启动 Analysis 会话?1 打开 Mercury LoadRunner。选择“开始” > “程序” > “Mercury LoadRunner” > “LoadRunner”。将打开“Mercury LoadRunner Launcher”窗口。2 打开 LoadRunner Analysis。在“负载测试”选项卡中,单击“分析负载测试”。将打开 LoadRunnerAnalysis。3 打开 Analysis 会话文件。为实现教程中本部分的目的并为了得到更有趣的结果,我们运行了一个测试场景,它与您在前面课程中所运行的场景类似。但是这次,测试集成了 70 个Vuser 而不是 10 个 Vuser。现在您可以打开由该场景结果创建的 Analysis 会话。在 Analysis 窗口中,依次选择“文件” >“打开”。将打开“打开现有 Analysis会话文件”对话框。在 \Tutorial 文件夹中,选择 analysis_session 并单击“打开”。Analysis 将在 Analysis 窗口中打开该会话文件。
Analysis 窗口概述Analysis 窗口包括下列三个主要部分:? 图树? 图查看区域? 图例图树:在左窗格中, Analysis 将显示可以打开查看的图。您可以在此处显示打开Analysis 时未显示的新图,或删除您不再想查看的图。图查看区域:Analysis 在此右窗格中显示图。默认情况下,当打开一个会话时,Analysis 概要报告将显示在此区域。图例:位于底部窗格中,使您可以查看选定图中的数据。请在图查看区域查看 Analysis 概要报告。在报告的统计信息概要中,您可以看到在该测试中运行了多达 70 个 Vuser。这里还记录了其他统计信息(例如总/ 平均吞吐量、总/ 平均点击次数)供您参考。是否已达到目标?但是,为实现 Analysis 会话的目的,此报告中最重要和最有趣的部分是事务概要。事务概要列出了有关每个事务行为的概要。请看每个事务的响应时间。“90%”列显示 90% 的特定事务(已执行)的响应时间。您可以看到在测试运行期间 90% 的 check_itinerary 事务(经过执行)的响应时间是 65.754 秒。该数值是事务平均响应时间 (32.826) 的两倍,说明对于发生的大多数此种事务都需要较高的响应时间。我们还会看到该事务失败了 28 次。1 打开平均事务响应时间图。在“事务名”列中,单击“check_itinerary”事务。图查看区域中将显示“平均事务响应时间”图。该图以及图下方的图例中将突出显示 check_itinerary 事务。图中的点表示场景运行期间特定时间的事务平均响应时间。将光标停留在图中的点上。将出现一个黄色的框,并显示该点的坐标。2 分析结果。注意, check_itinerary 事务的平均响应时间显著波动,在场景运行了 2:56 (分钟: 秒)时达到峰值 75.067 秒。在性能稳定的服务器上,事务的平均响应时间多少会比较平稳。注意,在图的底部,登录、注销、book_flight 和 search_flight 事务的平均响应时间多少都比较平稳。服务器的性能是否稳定?在前面的部分中,您已看到服务器性能的不稳定性。现在您将分析 70 个运行的Vuser 对系统性能产生的影响。1 研究 Vuser 的行为。在图树中单击“正在运行的 Vuser”。将在图查看区域中打开正在运行的 Vuser 图。您可以看到在场景运行的开始,正在运行的 Vuser 处于逐渐加压状态。接着, 70 个 Vuser 同时运行了 3 分钟,之后开始逐渐减压。2 筛选该图,以便使您只看到所有 Vuser 同时运行的时间片。筛选图之后,图数据将缩减以仅显示符合指定条件的数据。所有其他的数据将隐藏。右键单击该图并选择“设置筛选器/ 分组方式”,或者单击工具栏上的“设置筛选器/ 分组方式..” 图标。在“筛选条件”区域中,选择“场景已用时间”行的“值”列。单击向下箭头并选择时间范围为从 1:30 (分钟: 秒)至 3:45 (分钟: 秒)。单击“确定”。在“图设置”对话框中,单击“确定”。现在,正在运行的 Vuser 图仅显示场景运行中 1:30 (分钟: 秒)和 3:45 (分钟: 秒)之间运行的 Vuser。所有其他的 Vuser 已全被筛选出去。注意: 要清除筛选器,请右键单击该图并选择“清除筛选器/ 分组方式”,或者单击工具栏上的“清除筛选器/ 分组方式” 图标。3 将正在运行的 Vuser 图和平均事务响应时间图相关联以比较其数据。您可以把两个图放在一起,以查看一个图的数据对另一个图的数据所产生的影响。这称为将两个图关联。例如,您可以将正在运行的 Vuser 图和平均事务响应时间图相关联,以查看大量的 Vuser 对事务的平均响应时间产生的影响。右键单击正在运行的 Vuser 图并选择“合并图”。在“选择要合并的图”列表中,选择“平均事务响应时间”。在“选择合并类型”区域中,选择“关联”,然后单击“确定”。现在,正在运行的 Vuser 图和平均事务响应时间图在图查看区域中表示为一个图,即正在运行的 Vuser — 平均事务响应时间图。4 分析关联后的图。在该图中您可以看到随着 Vuser 数量的增加, check_itinerary 事务的平均响应时间也在逐渐增加。换句话说,随着负载的增加平均响应时间也在逐渐地增加。运行 64 个 Vuser 时,平均响应时间会突然急速增加。我们称之为测试弄崩了服务器。同时运行的 Vuser 超过 64 个时,响应时间会明显开始变长。保存模板目前您已经筛选了一个图并关联了两个图。下一次分析场景时,您可能需要使用相同的筛选器和合并条件来查看相同的图。您可以将合并和筛选器设置保存为模板,并在其他 Analysis 会话中使用。要保存模板,请执行下列操作:1 在“工具”菜单中,依次选择“模板” > “另存为模板..”。2 为模板输入相应的名称。3 清除“将该模板自动应用到新会话”选项:4 单击“确定”。下一次您打开一个新 Analysis 会话并需要使用保存的模板时,请执行下列操作:1 在“工具”菜单中,依次选择“模板” > “应用/ 编辑模板”。2 从列表中选择需要的模板,然后单击“应用模板”。如何确定问题的根源?到目前为止,您已经看到了增加服务器的负载将对 check_itinerary 事务的平均响应时间产生消极影响。您可以进一步向下搜索 check_itinerary 事务以查看对系统性能产生消极影响的系统资源。作为 LoadRunner Analysis 的独特工具,自动关联工具能合并所有包含一定数据(这些数据会对 check_itinerary 事务的响应时间产生影响)的图,并确定出现问题的原因。
1 在图树中,选择平均事务响应时间图。查看 check_itinerary 事务,尤其是该事务在已用时间片(1 分钟和 4 分钟之间)中的情况。平均响应时间几乎是立即开始增加,然后在接近 3 分钟时达到峰值。2 筛选平均事务响应时间图以仅显示 check_itinerary 事务。右键单击该图并选择“设置筛选器/ 分组方式”。在“事务名”值框中,选择“check_itinerary”。单击“确定”。筛选的图将仅显示 check_itinerary 事务并隐藏所有其他事务。3 自动关联该图。右键单击该图,然后选择“自动关联”。在“自动关联”对话框中,确保要关联的度量是 check_itinerary,并通过在框中输入时间或者沿已用场景时间轴将绿色和红色的杆拖至相应的位置,将时间范围设置为从 1:20 至 3:40 (分钟: 秒)。单击“确定”。自动关联图将显示在图查看区域中。check_itinerary 事务将突出显示。自动关联图的名称为默认的名称:自动关联图[ 数字]。4 重命名该图。在图树中,右键单击自动关联图[ 数字] 图,然后选择“重命名图”。这样就可以编辑图名。键入 Auto Correlated - check_itinerary 并按 Enter 键,或者单击 Analysis 窗口的任何位置。5 分析自动关联图。查看图下方的图例。在“度量”列中,您可以看到 Private Bytes 和 Pool Nonpaged Bytes (这两个度量都与内存有关)与 check_itinerary 事务有超过 70% 的关联匹配。这意味着在特定的时间间隔中,这些元素的行为与 check_itinerary 事务的行为密切相关。我们可以推断:当 check_itinerary 事务的响应时间达到峰值时,出现了系统内存资源短缺。还可以收集有关场景运行的哪些其他信息?除了 Analysis 会话开始时出现在图树中的图,您还可以通过显示其他的图来获得有关场景运行的其他信息。1 显示新图。单击工具栏上的“添加新图” 图标,或者在图树中单击“新图”。将打开“打开新图”对话框,并列出包含数据并可显示的图的类别。? Vuser 图显示有关 Vuser 及其状态的信息。? 错误图显示错误统计信息。? 事务图显示有关事务及其响应时间的数据。? Web 资源图显示点击次数、吞吐量和连接数据。? 网页细分图显示脚本中每个受监控的网页的数据。? 系统资源图显示系统资源使用率数据。在“打开新图”对话框中,单击类别旁边的“+”展开该类别。选择某个图,然后单击“打开图”。单击“关闭”关闭“打开新图”对话框。现在打开了其他多个图,您可以通过它们了解有关场景运行的更多信息。
如何发布结果?您可以以 HTML 或 Microsoft Word 报告的形式发布 Analysis 会话的结果。该报告使用设计者模板创建,并且包括所提供的图和数据的解释和图例。HTML 报告HTML 报告可以在任何浏览器中打开和查看。要创建 HTML 报告,请执行下列操作:1 在“报告”菜单中选择“HTML 报告”。2 选择报告的文件名和保存该报告的路径。单击“保存”。Analysis 将创建报告并将其显示在 Web 浏览器中。注意 HTML 报告的布局与Analysis 会话的布局十分类似。单击左窗格中的链接可以查看各种图。每幅图的描述都提供在页面底部。Microsoft Word 报告您可以以 Microsoft Word 报告的形式表示 Analysis 会话。与 HTML 报告相比,Word 报告更复杂,因为您可以选择包含有关场景、度量描述等常规信息。您还可以格式化该报告,使其包含公司的名称和徽标以及作者的详细信息。与任何 Word 文件一样,该报告也可以编辑,因此您可以在生成报告后继续添加注释和结果。要创建 Microsoft Word 报告,请执行下列操作:1 在“报告”菜单中选择“Microsoft Word 报告...”。将打开“Microsoft Word 报告”对话框。2 单击“格式化”选项卡:? 为报告输入一个标题。? 输入作者的名字、职别和公司名。? 默认情况下,生成的报告将有标题页、目录、图详细信息和描述以及度量描述。? 在“公司徽标”区域中,选择“包含公司徽标”,然后单击“浏览”查找徽标文件。注意,该文件必须是 .bmp 文件。? 输入保存报告的位置。3 单击“主内容”选项卡。? 选择要包括在报告中的场景和 Analysis 会话的部分。默认情况下,已选择除了“服务器性能”之外所有列出的部分。选择“服务器性能”。? 单击“编辑”。将打开“执行概要”对话框,请在该对话框中键入您的目标和结论。在“目标”框中,键入“测试场景的目标是...”。在“结论”框中,键入“所得出的结论如下:”单击“确定”关闭“执行概要”对话框。4 单击“其他图”选项卡。? 指定要包括在报告中的图。默认情况下,将列出并选中会话中的所有图,而且将图注释包括在报告中。? 您可以添加尚未在 Analysis 会话中打开的图,以获得更多信息。单击“添加”按钮。将打开“打开新图”对话框。展开系统资源类别并选择Windows 资源图。单击“添加图”,然后单击“关闭”关闭“打开新图”对话框。Windows 资源图将显示在包括在报告中的图的列表中。? 您可以指定显示在报告中图的顺序。单击“平均事务响应时间”选择图。单击“向上”按钮,直到该图显示在“正在运行的 Vuser”下。在报告中,平均事务响应时间图将在正在运行的 Vuser 图的后面。5 在“Microsoft Word 报告”对话框中,单击“确定”。将收集数据并以 Word 文件形式创建报告,而且该报告将在 Microsoft Word 中打开。除了 Analysis 会话期间生成的图,该报告还将包括目标和结论,以及您在生成报告时选择要包括的其他部分和图
上一篇:loadrunner的学习过程(五~八)
下一篇:TD自定义工作蓅代码
登录 注册