橙子0012 发表于 2018-2-28 15:21:43

监视和分析负载测试结果

监视正在运行的测试或分析已经完成的测试负载测试结果中包含定期从所测试计算机采集的性能计数器样本和错误信息。负载测试运行过程中可以采集大量的性能计数器样本。所采集的性能数据量取决于运行长度、采样间隔、所测试的计算机数及所要采集的计数器数。对于较大规模的负载测试,采集的性能数据量很可能会达到数十亿字节。默认情况下,测试控制器会在测试运行的同时将所采集的全部负载测试样本数据放入数据库中进行假脱机处理。其他数据(例如详细的计时信息和错误信息)则在测试结束时加载到数据库中。已完成测试的性能数据可以从数据库中加载并由“负载测试分析器”进行分析。从负载测试结果数据库加载的已完成测试结果称为“运行后结果”。测试进行期间,由“负载测试监视器”维护内存中压缩的性能计数器数据。为防止结果内存需求无限增长,负载测试监视器最多为每个性能计数器维护 200 个样本。这其中包括在目前已经过的运行时间段上均匀分布的 100 个样本,以及最近 100 个样本。测试运行期间所累积的结果称为“进程中结果”。http://i.msdn.microsoft.com/Aa730850.arrow_px_up(zh-cn,VS.80).gif 返回页首

向负载测试结果附加说明可以向负载测试结果中附加描述性信息和分析说明。“负载测试分析器”或“负载测试监视器”上下文菜单中的“分析”命令均可启动“分析”对话框。http://i.msdn.microsoft.com/Aa730850.loadtest001(zh-cn,VS.80).gif图 1. 分析对话框
http://i.msdn.microsoft.com/Aa730850.arrow_px_up(zh-cn,VS.80).gif 返回页首

查看负载测试结果“负载测试分析器”和“负载测试监视器”均提供负载测试结果的关系图和表视图。http://i.msdn.microsoft.com/Aa730850.LoadTest003(zh-cn,VS.80).gif图 2. 典型的负载测试结果
关系图视图
[*]主工具栏 – 提供用以启用或禁用分析器/监视器中各面板的命令。
[*]状态栏 – 报告测试状态。
[*]性能计数器窗格 – 列出所有采集的计数器。
[*]测试摘要窗格 – 提供整个测试结果的简明摘要。
[*]关系图工具栏 – 提供用以控制关系图功能的命令。
[*]关系图区域 – 显示测试结果的关系图。
[*]关系图缩放栏 – 显示选定行的数据。
[*]关系图绘图点 – 更改关系图水平方向的范围。
[*]关系图图例 – 列出关系图上绘制的所有计数器及统计数据。http://i.msdn.microsoft.com/Aa730850.LoadTest006(zh-cn,VS.80).gif图 3. 表视图

[*]表工具栏:允许在多个表之间进行选择。
[*]表数据:显示表格格式的数据。
http://i.msdn.microsoft.com/Aa730850.arrow_px_up(zh-cn,VS.80).gif 返回页首

分析器和监视器之间的差异“负载测试分析器”和“负载测试监视器”尽管用户界面相似,但存在以下方面的不同。
[*]负载测试分析器的特有功能(查看运行后负载测试结果):
[*]提供单一关系图模式(缩放),使您能够缩放任何时间范围内所含的数据。
[*]提供“显示最少/最多线条数”关系图选项,使您能够在关系图上查看折叠
[*]数据的高低水位标志。
[*]表视图中提供百分点统计。

[*]负载测试监视器的特有功能(查看进行中负载测试结果):
[*]提供两种关系图模式:折叠模式和滚动模式。
[*]提供用于切换折叠模式和滚动模式的选项。
[*]当鼠标置于尚未绘制的性能计数器上时,在关系图上提供“样例绘图”。
[*]提供进度指示器,指示测试的剩余时间。
[*]在主工具栏上提供停止按钮,用于停止负载测试。
[*]测试完成时显示状态栏链接,用于将结果从进程中结果过渡到运行后结果,
[*]从而将查看器由监视器切换为分析器。

1. 主工具栏主工具栏嵌入在负载测试监视器/分析器视图中,用于提供以下命令:
[*]停止正在运行的测试(测试完成后禁用)。
[*]显示数据窗格的图形或表视图。
[*]显示或隐藏负载测试性能计数器窗格。
[*]显示或隐藏负载测试摘要窗格。
http://i.msdn.microsoft.com/Aa730850.loadtest008(zh-cn,VS.80).gif图 4. 主工具栏
在按住 SHIFT 的同时按 ALT,可将键盘焦点设置到主工具栏上。

橙子0012 发表于 2018-2-28 15:26:07

2. 状态栏负载测试监视器/分析器状态栏显示正在运行或已经完成测试的状态。负载测试状态栏上显示以下组件:
[*]状态图标 - 指示测试的进度。测试可能处于以下状态之一:
[*]正在进行
[*]正在进行,出现错误或阀值冲突
[*]正常结束
[*]因内部错误而停止
[*]被用户中止

[*]状态消息 - 提供用于指示当前测试状态的文本消息:正在进行、完成、正在从
[*]数据库加载等等。
[*]阀值冲突计数 - 提供一个显示此负载测试运行所报告的阀值冲突总数的链接。
[*]单击此链接可在数据面板中显示阀值冲突表。此链接只有在发生第一个阀值冲
[*]突后才会出现。
[*]错误计数 - 提供一个显示此负载测试运行所报告的错误总数的链接。单击此链
[*]接可在数据面板中显示阀值冲突表。此链接只有在发生第一个错误后才会出现。
[*]剩余时间 - 显示当前正在运行的测试的剩余时间量。测试完成后此标签将消失。
[*]测试进度 - 指示当前所运行测试的已完成时间百分比或从负载测试结果数据库中
[*]加载结果的估计进度量。
http://i.msdn.microsoft.com/Aa730850.loadtest010(zh-cn,VS.80).gif图 5. 状态栏
测试运行完毕时,会出现一个对话框,用以从数据库中加载完整的负载测试结果, 进而将视图从进程中结果过渡到运行后结果。如果在测试完成时选择不执行这样的过渡,状态栏中会出现如下的链接。单击此链接可强制过渡到运行后结果。http://i.msdn.microsoft.com/Aa730850.loadtest012(zh-cn,VS.80).gif图 6. 测试运行完成对话框
状态栏还用于在从数据库加载负载测试结果时显示加载进度。http://i.msdn.microsoft.com/Aa730850.loadtest013(zh-cn,VS.80).gif图 7. 进度状态区
通过使用 TAB 将输入焦点在负载测试监视器/分析器控件间循环,可以将输入焦点移动到状态栏的某个链接上。3. 性能计数器窗格负载测试监视器/分析器包含一个性能计数器窗格,用以提供负载测试期间所采集的所有性能计数器的结构化视图。这些计数器以树形结构组织在一起,其中的叶节点是可用来绘制关系图的性能计数器实例。性能计数器窗格提供以下功能:
[*]负载测试运行期间所采集的所有性能计数器的结构化视图。
[*]传达阀值冲突信息。
[*]允许选择用于绘制关系图的计数器。
所有性能计数器的结构化视图 - 性能计数器树包含以下主要分支:
[*]整体 – 此分支包含各测试代理及整个测试机组的测试计数器摘要数据。http://i.msdn.microsoft.com/Aa730850.loadtest015(zh-cn,VS.80).gif图 8. 性能计数器的结构化视图

[*]方案名称 - 性能计数器树中标有负载测试方案名称的分支中,包含与特定负载测试方案相关的所有负载测试计数器实例。多数负载测试计数器都嵌套在某个方案分支内。方案分支中包含一些测试节点。测试节点中又包含页面、请求和事务节点。这一结构中的任何叶节点都是可以添加到关系图中的性能计数器。http://i.msdn.microsoft.com/Aa730850.LoadTest017(zh-cn,VS.80).gif图 9. 方案名称性能计数器树视图

[*]计算机 - 性能计数器树中的“计算机”分支包含按计算机分组的所有非负载测试计http://i.msdn.microsoft.com/Aa730850.loadtest019(zh-cn,VS.80).gif图 10. 性能计数器树中计算机分支视图

[*]数器实例。在“计算机”分支中,负载测试运行设置中的计数器集映射部分所指定
[*]的每台计算机对应一个节点。每个计算机节点都包含一组从该计算机采集的性能计
[*]数器类别。类别中包含计数器,计数器中又包含性能计数器实例名称。
传达阀值冲突信息 - 阀值冲突与特定的性能计数器相关,用以指示性能计数器超出或低于设定阀值。计数器窗格中的图标可传达阀值冲突信息。阀值冲突图标从发生冲突的计数器所在的树节点传播到根节点,提醒用户在某个计数器上发生冲突,而且由于树尚未展开,用户在树中可能无法看到。图标可以是以下一种形式:http://i.msdn.microsoft.com/Aa730850.loadtest020(zh-cn,VS.80).gif 无阀值冲突http://i.msdn.microsoft.com/Aa730850.loadtest021(zh-cn,VS.80).gif 最后一个间隔发生严重阀值冲突http://i.msdn.microsoft.com/Aa730850.loadtest022(zh-cn,VS.80).gif 上一个间隔发生严重阀值冲突http://i.msdn.microsoft.com/Aa730850.loadtest023(zh-cn,VS.80).gif 最后一个间隔发生警告阀值冲突http://i.msdn.microsoft.com/Aa730850.loadtest024(zh-cn,VS.80).gif 上一间隔发生警告阀值冲突阀值冲突也可以显示在关系图上。在关系图上,阀值图标会显示在发生阀值冲突的数据点旁。http://i.msdn.microsoft.com/Aa730850.loadtest025(zh-cn,VS.80).gif图 11. 阈值冲突
http://i.msdn.microsoft.com/Aa730850.loadtest027(zh-cn,VS.80).gif

橙子0012 发表于 2018-2-28 15:26:45

图 12. 显示阈值数据点的关系图
这些图片在计数器窗格和关系图上显示了“%Process Time”计数器的警告阈值冲突。请注意发生冲突时图标在计数器窗格中传播到根节点的方式。选择用于绘制关系图的计数器 – 从计数器窗格中选择用于关系图中的性能计数器。可使用以下任一方式来绘制性能计数器的关系图:
[*]在上下文菜单中选择“添加到关系图”。
[*]双击树中的节点。
[*]将树中的节点拖放到关系图上。
要绘制单个性能计数器的关系图,请选择树中的叶节点。以此唯一地标识所需的性能计数器。要绘制一组相关性能计数器的关系图,请选择上下文菜单选项或从非叶节点拖动。所选节点的所有子节点将被添加到关系图中。还可以使用“添加到图例”命令或将某性能计数器拖动到关系图图例上,来将性能计数器置于图例上而非关系图上。这样操作后,无需查看关系图上的趋势线即可了解最小/最大/平均统计数据。使用图例上的复选框可在关系图上显示趋势线。注意 由于负载测试监视器在内存中维护所有计数器的性能数据,因此它可以提供负载测试分析器中无法获得的“幻像绘图”功能。当鼠标置于计数器窗格中的叶节点上时,“幻像绘图”功能会暂时绘制当前关系图上某性能计数器的图表。鼠标离开该节点后,图表即被删除。通过此功能可以快速查看计数器,以确定是否有要添加到关系图中予以关注的计数器。确定了要添加到关系图中予以关注的计数器后,只需双击该节点或使用其他允许向关系图中添加计数器的任一选项。4. 摘要窗格摘要窗格提供了总体请求和测试统计数据的快速参考以及控制器名称和采样率。使用主工具栏上的“显示摘要面板”切换按钮可以从视图中隐藏摘要窗格。http://i.msdn.microsoft.com/Aa730850.loadtest028(zh-cn,VS.80).gif图 13. 摘要窗格
数据窗格在负载测试监视器或负载测试分析器中,数据窗格通常会占用屏幕的大部分空间。它位于状态栏之下,计数器窗格的右侧, 是用来显示所分析数据的区域。数据有两种视图显示形式:“关系图”视图或“表”视图。主工具栏上的“关系图”和“表”按钮用于在这两个视图之间切换。5. 关系图视图:关系图工具栏http://i.msdn.microsoft.com/Aa730850.loadtest031(zh-cn,VS.80).gif图 14. 关系图工具栏
处于“关系图”视图中时,关系图工具栏会嵌入数据窗格的顶部。通过它可以执行如下操作:
[*]从可用关系图的列表中选择关系图。
[*]从可用关系图的列表中添加或删除关系图。
[*]设置关系图绘制选项,其中包括:
[*]显示/隐藏绘图点网格。
[*]显示/隐藏关系图图例。
[*]绘制整个运行期间所采集数据的关系图,或者仅绘制最近采集的数据的关系图。
[*]显示水平网格线。
[*]显示最少/最多线条数。
[*]在关系图上显示阈值冲突。

关系图工具栏上的所有命令同样也会在与关系图视图关联的上下文菜单中获得。
关系图选项负载测试监视器/分析器可以呈现多个关系图(每个关系图定义了一组计数器来显示),但每次只能显示一个关系图。通过“关系图选项”下拉列表框可以选择要显示的关系图。默认关系图始终在负载测试监视器/分析器中进行定义且不能删除。如果在测试机组上运行负载测试,则测试机组中的每个代理和控制器都将有一个额外的关系图。该关系图的名称会设为代理或控制器计算机的名称。默认情况下,代理和控制器的关系图中会显示 CPU、内存和网络计数器。添加/删除关系图除了自动创建的关系图之外,还可以单击关系图工具栏上的“添加”按钮来创建和删除新的关系图。新创建的关系图中不包含任何计数器。新关系图的名称为“Graphn”,其中 n 为递增的连续数字。这些关系图不能重新命名。除“默认”关系图外的其他任何关系图都可以通过单击关系图工具栏上的“删除”按钮来删除。关系图选项关系图选项下拉列表框提供几种不同的关系图视图定制方式。http://i.msdn.microsoft.com/Aa730850.loadtest032(zh-cn,VS.80).gif图 15. 关系图选项下拉列表

[*]显示图例 - 显示/隐藏与关系图视图关联的图例窗格。
[*]显示绘图点 - 显示/隐藏与关系图视图关联的绘图点窗格。
[*]用关系图表示整个运行的数据 - 显示整个运行期间的数据。有关详细描述,请
[*]参阅本文档后面的“折叠关系图视图”部分。
[*]仅用关系图表示最新的数据 - 显示最近的 100 个采样间隔的数据。有关详细描
[*]述,请参阅本文档后面的“滚动关系图视图”部分。
[*]显示水平网格线 - 显示/隐藏关系图上的水平网格线。
[*]显示最少/最多线条数 - 显示折叠数据点的最小/最大值。有关此选项的详细描
[*]述,请参阅关系图模式。
[*]显示关系图上的阈值冲突 - 在关系图上为具有关联阈值冲突的数据点绘制阈值
[*]冲突。
关系图工具栏上的所有功能均可通过“关系图选项”对话框进行访问,通过关系图区域上的上下文菜单可进入该对话框。http://i.msdn.microsoft.com/Aa730850.loadtest034(zh-cn,VS.80).gif

橙子0012 发表于 2018-2-28 15:27:09

图 16. 关系图选项对话框
6. 关系图视图:关系图区域关系图区域包括 X 轴、Y 轴和绘图区。所选关系图会在当前关系图模式下绘制。有关可用关系图模式的详细描述,请参阅关系图模式部分。单击关系图区域中的绘图线可更改选定的计数器。此外,将鼠标指针停留在关系图区域中某个数据点或阈值冲突之上时,会出现弹出信息。如果将指针停留在某条线上,上下文菜单中会出现用来从关系图中删除计数器的“删除”命令。关系图区域:复制到剪贴板在关系图区域上下文菜单中,还提供了“复制”操作功能。此命令可将关系图和图例的快照以 HTML 格式复制到剪贴板中。下图为粘贴到 Microsoft Outlook 中的关系图的屏幕快照。http://i.msdn.microsoft.com/Aa730850.loadtest036(zh-cn,VS.80).gif图 17. HTML 格式的关系图快照
7. 关系图视图:关系图缩放控件只有在负载测试分析器中查看运行后测试结果时,缩放控件才会出现。有关缩放控件的详细描述,请参阅关系图模式:缩放关系图部分。可使用鼠标或左右箭头键来调整缩放控件。使用箭头键调整缩放控件时,每次可以按 1 个采样间隔来调整窗口范围。使用 SHIFT 和箭头键则可以按 10 个采样间隔来调整。要使用箭头键来调整缩放控件,首先需要使用 TAB 键将焦点放在缩放控件上。焦点位于左侧滑块上时,箭头键会将缩放窗口的起始边界向左或向右移动 1 个间隔。焦点位于中央滑块上时,可以使用箭头键将缩放窗口向左或向右滚动 1 个采样间隔,但不会改变缩放窗口的尺寸。最后,移动右侧滑块可以将缩放窗口的截止边界扩展或缩小 1 个采样间隔。使用 TAB 键可将焦点从左侧移动到中央、右侧。8. 关系图视图:关系图绘图点网格关系图数据网格列出了图例中所选计数器的所有数据点。如果未选择任何计数器,数据网格为空白。在关系图工具栏中切换“显示绘图点”选项可隐藏数据网格。数据网格的内容可作为文本复制到剪贴板中。9. 关系图视图:关系图图例关系图图例用于显示与关系图关联的各计数器的信息。图例中包含以下信息。http://i.msdn.microsoft.com/Aa730850.loadtest039(zh-cn,VS.80).gif图 18. 关系图图例

[*]在关系图上显示 - 此复选框控制是否在关系图上绘制绘图线。如果清除此方框,
[*]计数器的统计数据会继续在图例中显示,但绘图线会从关系图中删除。如果选中
[*]此方框,则会在关系图上绘制绘图线。
[*]范围 - 此列显示计数器 y 轴的范围。默认情况下,该值会随着样本数据范围的
[*]变更而自动调整。自动调整后的范围始终为大于“最大值”的下一个 10 的乘方
[*](包括 10 的负数幂)。关系图可以包含多种计数器,每个拥有不同的范围。因此,
[*]y 轴并不是以任何特定范围来标记,而是以 0-100 的值标记,用以表示每个计
[*]数器总范围的百分比。例如,对于范围是 1000 的计数器,y 轴上的数据点 60 对
[*]应计数器的值为 600。
如前面所述,范围会随样本数据的变更而自动调整,以确保所有数据点都能在关系图上显示。通过提供的选项还可以覆盖此功能,将范围锁定在特定的值。范围锁定后,任何超出范围的值都显示在关系图的顶部。在上一个图中,“% 处理时间”计数器将范围锁定在 100。使用“绘图选项”对话框(在图例的上下文菜单中)可将范围锁定在特定的值。
[*]计数器 -“计数器”、“实例”、“类别”和“计算机”这四列共同唯一地标
[*]识性能计数器。
[*]颜色 -“颜色”列显示了为性能计数器所绘制的线条的颜色和线条样式。使用
[*]“绘图选项”对话框可更改关系图上性能计数器的颜色和线条样式。“绘图选项”
[*]对话框可从图例的上下文菜单获得。
[*]统计 -“最小值”、“最大值”、“平均值”和“最后一个”这 4 列显示了性
[*]能计数器的相应统计数据。这些值对应于关系图可见部分所显示的数据。例如,
[*]如果缩放某次运行的某一部分,图例的统计数据只反映所缩放区域的值。“最后
[*]一个”列显示最近一次完成的采样间隔上的性能计数器值。
选择图例中的某个项目后,可以执行以下操作:
[*]允许从图例(及关系图)中删除该项目。按 DELETE 或从上下文菜单中选择“
[*]删除”即可删除该项目。
[*]突出显示关系图上所绘制的线。
[*]显示数据网格,用以显示所选项目的数据。
[*]允许为此计数器访问“绘图选项”对话框。
“绘图选项”对话框通过“绘图选项”对话框可以更改所绘制计数器的颜色和/或线条样式。在此对话框中,还可以将范围固定于某个特定的值或设置基于样本数据自动调整的范围。http://i.msdn.microsoft.com/Aa730850.loadtest040(zh-cn,VS.80).gif图 19. “绘图选项”对话框
关系图模式“负载测试监视器”中的关系图以下列三种模式之一显示:
[*]折叠模式
[*]滚动模式
[*]缩放模式
查看“进行中”负载测试的结果时,可以使用折叠和滚动关系图模式。折叠模式是“进行中”负载测试的默认关系图模式。缩放关系图模式只能在查看已完成负载测试的结果时使用。它是在查看已完成负载测试的结果时唯一可以使用的关系图模式。以下部分详细介绍每种关系图模式。更改关系图模式使用关系图工具栏上的“选项”菜单可以在折叠模式和滚动模式间切换。对于折叠模式选择“用关系图表示整个运行的数据”,对于滚动模式选择“仅用关系图表示最新的数据”。http://i.msdn.microsoft.com/Aa730850.LoadTest042(zh-cn,VS.80).gif图 20. 为进行中的负载测试选择折叠或滚动模式
查看数据库中已完成负载测试的结果时,应使用缩放关系图模式。在缩放关系图中,可以获得整个运行期的数据样本,可以使用缩放控件来选择关系图上显示的时间范围。http://i.msdn.microsoft.com/Aa730850.LoadTest043(zh-cn,VS.80).gif图 21. 折叠和滚动选项在缩放模式下被禁用
http://i.msdn.microsoft.com/Aa730850.LoadTest044(zh-cn,VS.80).gif

橙子0012 发表于 2018-2-28 15:29:52

图 22. 缩放关系图模式中提供缩放滑块
折叠模式折叠关系图用于“进行中”的测试,可减少内存中须维护的数据量,同时在整个运行期间仍显示性能计数器的趋势线。尽管运行期间数据因折叠模式的启用而从内存中丢弃,但负载测试期间所采集的每个数据样本都被存储在负载测试数据库中,可以在运行完毕后通过缩放关系图模式进行访问。折叠关系图针对每个性能计数器可显示多达 100 个数据点。折叠关系图 x 轴的原点为 00:00,范围覆盖整个测试运行。
http://i.msdn.microsoft.com/Aa730850.LoadTest045(zh-cn,VS.80).gif图 23. 在折叠模式中,X 轴的范围横跨整个负载测试过程
当针对计数器所采集的数据点数超过 100 时,关系图将通过删除数据系列中的交叉样本进行折叠并重新计算所删除样本邻近的数据点。对于 5 秒的采样间隔而言,第一次折叠将发生在测试进行到 500 秒的时候。假定下图显示了一个性能计数器及其数据点,采样间隔为 5 秒。这是折叠前的关系图视图。00:05 时的值为 16.8,00:10 时的值为 11.1。http://i.msdn.microsoft.com/Aa730850.loadtest046(zh-cn,VS.80).gif图 24. 第一次折叠之前
这是数据折叠后同一关系图的视图。请注意,此时数据点的间隔为 10 秒,并且与已删除数据点取平均值,新值已发生变化(例如,00:10 时的值为 13.9)。http://i.msdn.microsoft.com/Aa730850.loadtest047(zh-cn,VS.80).gif图 25. 第一次折叠之后
一次折叠操作会从 100 个样本的系列中删除 20 个样本。第一次折叠删除系列中前 20 个交叉数据点;第二次折叠删除其次 20 个,依此类推。到达数据系列的末尾时,折叠操作会返回到数据系列的开头。这样会使关系图中左侧数据点的间隔比右侧数据点的间隔更大。前面所示的图 23 显示了这种情况:左侧数据点的间隔为 20 秒,而右侧数据点的间隔为 10 秒。此次测试的采样率为 5 秒,但随着测试的进行,折叠导致间隔粒度增大。测试运行完毕后,只需从数据库中读取完整结果,即可将运行期间被折叠的所有数据检索出来(请参阅缩放关系图模式)。滚动模式滚动关系图是用于“进行中”测试中的一种可选视图,可显示最近的数据点。使用滚动关系图只能查看测试中最近的 100 个数据间隔。在滚动模式中,关系图 x 轴原点随测试的进行向前滚动,在图中显示最近的 100 个采样间隔。 一旦达到 100 个数据点,关系图就会自动向前滚动 10 个采样间隔。http://i.msdn.microsoft.com/Aa730850.LoadTest048(zh-cn,VS.80).gif图 26. 带有 5 秒间隔数据点的滚动关系图
与折叠关系图 x 轴范围的不断增加相比,滚动关系图 x 轴的范围保持在 100 次采样间隔。与折叠关系图随测试进行增加间隔(采样间隔的倍数)的更新模式相比,滚动关系图的更新始终保持以采样间隔为固定的数据间隔。请比较图 26 中的滚动关系图与图 23 中的折叠关系图。缩放模式查看从负载测试结果数据库所加载的已完成测试运行结果时,应使用缩放关系图模式。负载测试结果数据库中包含负载测试期间所采集的每个数据点。在正常的负载测试中,整个负载测试运行期间可能拥有上千个采样间隔。缩放关系图会显示多达 100 个数据点。如果关系图的范围超过 100 个采样间隔,会从其范围内删除交叉样本,以减少样本数,这一方式与折叠关系图相同。但与折叠关系图不同的是,所删除的样本并不会从内存中删除,将关系图放大为更小的时间段范围时,这些删除的样本仍可以显示出来。如果缩放的范围小于 100 个采样间隔,则不需通过删除采样间隔来满足 100 个数据点的限制。缩放关系图最开始的缩放范围始终为整个测试运行期。然后通过调整缩放控件,来更改图中所显示的范围。http://i.msdn.microsoft.com/Aa730850.loadtest049(zh-cn,VS.80).gif图 27. 缩放关系图最初覆盖整个运行期
http://i.msdn.microsoft.com/Aa730850.LoadTest050(zh-cn,VS.80).gif图 28. 放大为更小的时间范围
缩放关系图的图例始终显示缩放时间段的值;“最小值”、“最大值”和“平均值”会随缩放范围的变化而变化。最小值和最大值分别对应于关系图中所显示的高低水位标志。这样,即使最小值和最大值所对应的样本因折叠操作而被删除,“最小值”和“最大值”列仍会反映该时间段任何样本的高低值,尽管这些点因从数据系列中折叠掉而无法出现在关系图上。缩放关系图中的最少 / 最多线条数

橙子0012 发表于 2018-2-28 15:30:24

“显示最少/最多线条数”选项可用于缩放关系图中,以显示因折叠而从数据系列中忽略的样本的最小值和最大值。折叠操作在更长的时间段上对多个样本取平均值时,可能会消除关系图中的性能峰值。通过使用“显示最少/最多线条数”,即使关系图中的峰值因折叠操作而被缩减,也能找到性能峰值的位置。http://i.msdn.microsoft.com/Aa730850.LoadTest051(zh-cn,VS.80).gif图 29. 显示最少/最多线条数
下面一系列屏幕快照演示了如何使用“显示最少/最多线条数”选项查找性能峰值以及如何通过缩放显示细节。第一个屏幕快照显示了在 1 小时的整个测试运行期所绘制的单个性能计数器。采样率为 5 秒时,1 小时的运行将产生 720 个样本。因折叠将忽略 620 个样本,短期性能峰值很可能会被消除。http://i.msdn.microsoft.com/Aa730850.LoadTest052(zh-cn,VS.80).gif图 30. 不使用最少/最多线条数的性能计数器绘图
在下一个屏幕快照中,启用了“显示最少/最多线条数”选项,以显示折叠数据点的最小值和最大值。请注意,关系图中只针对所选项目绘制最小值和最大值线条。还请注意,在此屏幕快照中此测试大约在 00:20 点处有一个小峰值。http://i.msdn.microsoft.com/Aa730850.LoadTest053(zh-cn,VS.80).gif图 31. 使用最少/最多线条数的性能计数器绘图
下一个屏幕快照显示拖选关系图中包含一个已折叠峰值的缩放范围。完成这一选择时,关系图即放大到选定范围。http://i.msdn.microsoft.com/Aa730850.loadtest054(zh-cn,VS.80).gif图 32. 使用最少/最多线条数和拖选操作的性能计数器绘图
最后一个屏幕快照显示了关系图中完成拖选后的结果。所选的范围小到不需折叠任何数据。http://i.msdn.microsoft.com/Aa730850.LoadTest055(zh-cn,VS.80).gif图 33. 拖选性能计数器绘图
查看不折叠的整个运行期数据如果缩放范围小于或等于 100 个采样间隔,将不会发生数据折叠。如果选择的缩放范围小到不发生折叠,则可以使用缩放控件滚动条(控件的中间部分)来滚动所有未折叠的数据。表视图负载测试性能计数器可以以表格形式查看。相应选择后,表视图会代替关系图视图。表视图中可显示以下表格:
[*]代理
[*]错误
[*]页面(查看“运行后结果”时提供额外的统计数据)
[*]请求
[*]SQL 跟踪(只能在查看“运行后结果”时使用)
[*]阈值
[*]事务
一次可以查看一个表格。表格应通过数据窗口中嵌入的下拉列表框进行选择。http://i.msdn.microsoft.com/Aa730850.loadtest056(zh-cn,VS.80).gif图 34. 表视图
表格中显示的数字值是性能计数器在整个运行期的累积值。但“最后一个”列除外,它表示来自最近一个采样间隔的值。页面表格负载测试运行设置包含“计时详细信息存储”属性,它可以设置为“仅统计”或“所有各个详细信息”。选择这些值中的一个后,除正常对采样间隔的页面执行时间计算平均值外,还会使负载测试存储每次页面执行的结果。默认情况下,不采集详细的页面信息。采集各页面统计数据后,“运行后结果”的页面表格将包含一些额外的列,用以显示根据网络仿真分解成各组的百分点数据和页面响应时间。http://i.msdn.microsoft.com/Aa730850.loadtest058(zh-cn,VS.80).gif图 35. 显示页面的表视图
SQL 跟踪表格只有在负载测试运行设置中启用 SQL 跟踪后,才会在“运行后结果”中显示“SQL 跟踪表格”。添加 / 删除列尽管所有计数器都可用,但默认情况下会显示可用列的子集。“添加/删除列”对话框用于选择针对特殊页面要显示的一组列。通过任何表格的上下文菜单都可以进入“添加/删除列”对话框。http://i.msdn.microsoft.com/Aa730850.loadtest060(zh-cn,VS.80).gif

橙子0012 发表于 2018-2-28 15:30:40

图 36. “添加/删除列”对话框
错误链接和错误表格代表错误计数的列可作为链接显示。单击错误链接可以深入了解更多错误信息。这样可以启动“错误”对话框(下文将有说明),所有与所选计数器相关的错误都会显示在其中。以下表格中都包含指向错误详细信息的链接:
[*]请求 - 单击“失败请求”的错误链接可启动包含与特定请求相关联的所有错误
[*]的“错误”对话框。
[*]测试 - 单击“失败测试”的错误链接可启动包含与特定测试相关联的所有错误
[*]的“错误”对话框。
[*]错误 - 单击“错误计数”的错误链接可启动包含与特定错误类型/错误子类型
[*]相关联的所有错误的“错误”对话框。
要查看在负载测试中发生的所有错误,请单击错误表格中的“错误总计”链接。http://i.msdn.microsoft.com/Aa730850.loadtest063(zh-cn,VS.80).gif图 37. 显示错误的表视图
错误对话框
[*]“错误”对话框会根据性能计数器的错误详细信息链接来显示错误信息。对话
[*]框中每一行显示一个错误,列出由负载测试采集到的一般错误信息。
http://i.msdn.microsoft.com/Aa730850.LoadTest065(zh-cn,VS.80).gif图 38. “负载测试结果”对话框
如果错误包含其他详细信息或关联的堆栈跟踪,该错误的“堆栈”和/或“详细信息”列会出现其他详细信息链接。单击其中任一链接后,会出现包含其他信息的另一个对话框。错误详细信息对话框错误详细信息是负载测试针对 Web 请求而采集的。错误详细信息中包含完整的 HTTP 请求、完整的 HTTP 响应、文本上下文以及该请求的规则验证/提取规则结果。由于错误详细信息会占用数据库中的大量空间,因此错误详细信息数不能超过特定的量。负载测试运行设置的“最大错误详细信息”属性用于控制所采集错误详细信息的数量。“错误详细信息”对话框用于显示一个 Web 请求的结果。这些信息与 Web 测试结果显示在同一查看器中。但错误详细信息不包含附属请求信息,或高级别请求的结果。请注意以下屏幕快照中断开图像的图标。之所以出现这种情况,是因为没有存储附属请求信息。http://i.msdn.microsoft.com/Aa730850.LoadTest066(zh-cn,VS.80).gif图 39. 错误详细页面示例
http://i.msdn.microsoft.com/Aa730850.arrow_px_up(zh-cn,VS.80).gif 返回页首

结束语通过 Visual Studio Team Test Edition 负载测试结果查看器的各项功能,用户可以查找其应用程序中的瓶颈、发现错误并衡量改进措施。本文着重讲述 Visual Studio Team Test Edition 中提供的负载测试分析功能。构建并分析负载测试的策略和技术不在本文档的主题范筹内,但会在其他文章中加以说明。

梦想家 发表于 2018-2-28 16:00:40

:victory:

Miss_love 发表于 2020-12-30 08:41:46

支持
页: [1]
查看完整版本: 监视和分析负载测试结果