本主题介绍负载测试工具执行负载测试后生成的报告,同时阐明了如何访问、自定义、保存、重新打开这些报告。章节目录:
如果希望 Load Test 创建一份详情报告,您必须在测试执行前进行配置。默认情况下,Load Test 不会收集该报告的信息(为了简化测试过程)。
预选详情报告选项,Load Test 会根据其常规 Load Test 报告创建详细的场景报告。详细的场景报告将绘制场景运行所产生的每次“点击”。这是 Load Test 为虚拟用户测试生成的最详细的报告。因为该报告绘制了每次点击,所以您可以看到大多数点击出现在哪里,以及有多少点击落在正态分布之外。
若要预选应用于项目中所有场景的详情报告选项:
请选择负载测试选项卡中的场景节点。报告设置将出现在右侧 GUI 面板。
如果负载测试选项卡未激活,请右键点击项目选项卡的任何位置并从快捷菜单中选择创建负载测试。 |
负载测试完成之后,可在右侧 GUI 面板中获得其测试结果。稍后若要打开此窗口:
负载测试结果将在右侧 GUI 面板中显示,该面板具有以下菜单选项:
在测试树选择面板中,点击测试树面板下的选择按钮下拉菜单中的合适项,可以选择所有测试、所有测试套件、所有测试请求(如果报告中有请求)、所有或无测试树节点:
测试树选择面板中的每个树节点都有相同的下拉菜单:
可扩展的选项面板显示测试树选择面板的其他控件。路径单一选择选项(默认选中)确保在每个树路径上选择的树节点不超过一个。这可以防止在测试树选择面板控制的视图中不希望的父节点和子节点数据的报告累积。
传播选择选项(默认为选中)允许将您选择应用于整个子树。例如,如果您选择/未选择拥有子节点的树节点,所有子节点都将被选中/不被选中。
本节描述以下报告类型:
测试信息报告以文本格式列出了基本测试参数和结果。还将为已配置的指标显示服务质量报告摘要。
统计信息报告列出了负载测试的详细数据,例如运行时间和故障计数。
该报告显示了单个测试的数据,以及它们所属的测试套件(如果存在这样的数据)。测试和测试套件都是在每个单独的测试或测试套件完成后的负载测试期间生成的。稍后这些单个报告将用来计算统计信息视图中显示的汇总值。
统计信息报告可以在分层结构或平面布局中查看。
这是分层次的布局:
这是平面布局:
查看统计报告时,可以使用输出类型菜单。输出类型菜单确定显示的哪个报告输出类型。该菜单提供两种类型的报告,每种报告显示不同的信息列。报告类型不同点在于:
如果某些机器被配置为在高流通量模式下运行,可用报告类型将为:
您可以删除面板中显示的用于通用和网络客户端报告的选定列,以及/或为每种报告类型添加附加列。
若要自定义可用的报告列:
若要访问有关特定测试故障的详情,请双击相关报告行。您可以通过定位表示该测试的行,然后检查该行中的“故障计数”列中的的数字来确定给定的测试是否失败。Load Test 将显示测试的最后一个错误的详情。您可以在Viewing Detailed Report Table Content中所述的“详细报告”部分查看特定测试的所有错误。
详情报告保存负载测试期间收集的所有数据样本,以及发生的所有错误的详细信息。这是 Load Test 为负载测试生成的最详细的报告。因为该报告绘制了每次点击,所以您可以看到大多数点击出现在哪里,以及有多少点击落在正态分布之外。所有服务器机器的结果都显示在同一张图表中;不同服务器的结果用不同颜色标示。
详情报告包含以下选项:
此外,还可以通过右侧 GUI 面板顶部的菜单筛选详情报告每个选项中的结果。显示的负载测试详情可通过机器、配置文件和测试来过滤。
请注意,测试树过滤器可提供包括测试套件、测试和用于浏览器测试、浏览器请求报告的图表。当评估被测系统的负载时,请留意这一点,并选择适用于您的测试场景报告的合适子集。例如,如果运行一个基于 SOAtest SOAP 客户端的负载测试,您可能希望只选择测试节点(参见下面的截图),以查看对被测系统的 SOAP 客户端请求的图表。只有当您想要查看包含多个测试的事务图时,才会选择测试套件节点。
以下选项显示在详细报告图表选项卡图例中:
ox
”给主机,”SNMP TCP Established
”给图表标题,在负载测试过程中,您将在“图表”选项卡中看见一个复选框,标记为“ox SNMP TCP Established
”。有关监控器参数的更多信息,请参阅使用监控器。有多种方法可以自定义“详细报告图表”选项卡的报告内容。
若要过滤显示的图表数据:
若要自定义图表选项卡中的报告参数:
若要将报告的 Y 轴从默认线性刻度更改为对数刻度(反之亦然):
若要使用指定颜色填充图表区,请启用填充图表地区。
若要在负载测试期间将单个点击作为单个点显示:
请启用显示单个点击。在负载测试期间发生的所有单个点击都显示在图表选项卡中。
将鼠标悬停于点击上,将显示一个包含点击统计信息的工具提示。
只有预选了记录个体点击选项时,才能在详情报告中显示单个点击,该选项来自场景配置面板的报告设置选项卡。更多信息,请参阅Preselecting Detailed Report Options。 |
为了减少图表点的数量,在长时间运行负载测试(12 小时或更长时间)有大量报告的情况下,请点击箭头按钮展开减少图标点框。可选择以下选项:
若要放大图表的特定区域:
若要放大或缩小图表:
若要移动图表:
若要返回到原始图表尺寸和/或位置:
若要以 CSV 格式导出并保存单个点击:
请启用显示单个点击。负载测试期间发生的所有单个点击都显示在图表选项卡中。
只有预选了记录个体点击选项时,才能在详情报告中显示单个点击,该选项来自场景配置面板的报告设置选项卡。更多信息,请参阅Preselecting Detailed Report Options。 |
若要以 CSV 格式导出并保存图表点:
在打开的对话框中,选择要保存 CSV 文件的位置。
只有预选了记录个体点击选项时,导出图表点才可用,该选项来自场景配置面板的报告设置选项卡。更多信息,请参阅Preselecting Detailed Report Options。 |
若要自定义详细报告图表颜色:
直方图表示所选定变量(执行时间、请求大小、响应大小)获得的值的分布。
若要控制直方图所关注的内容:
在查看详细报告“表格”选项卡中的任何错误或单个点击之前,必须先从“图表”选项卡中选择一个时间间隔,完成以下操作之一:
若要查看“表格”选项卡中的错误,请完成“图表”选项卡中的以下操作:
若要查看“表格”选项卡中的单个点击,请完成“图表”选项卡中的以下操作:
您可以通过右键点击“个体点击”表格中的行查看虚拟用户的所有点击率,然后选择显示虚拟用户的所有点击。
这将打开一个包含所选虚拟用户的所有点击的表格表。
若要返回到“个体点击”表格,请点击显示之前的表<<。
若要自定义“表格”选项卡视图中的可视行:
服务质量(QoS)报告显示您在 Load Test 中配置的指标,并显示一个概要选项卡和一个明细选项卡。
概要选项卡显示度量指标列、描述列和状态列。QoS 报告中的每一行对应一个 QoS 指标。
明细选项卡显示为所选定场景配置的可用指标的结果。明细选项卡还显示从指标度量列表中选择的指标的名称、参数和注意事项。
您可以通过从指标列表中配置任意指标的参数并点击应用到报告,以进一步自定义报告中的指标。您还可以从指标列表(CTRL-点击)中选择多个指标,然后点击应用到报告。这将更新 Qos 报告和测试信息视图中可见的 QoS 结果,但不会反映在场景视图的 QoS 节点中。
有关使用和配置服务质量指标的更多信息,请参阅自定义场景的服务质量指标。
您还可以右键点击负载测试工具选项卡的任何位置,并选择查看结构报告> HTML/XML。在浏览器中显示负载测试配置报告。该面板包含以下信息:
负载测试执行期间,使用浏览器测试工具的 web 功能测试会发送多个请求(可在 SOAtest 负载测试透视图下的测试编辑器中看到该请求)。您可以将这些请求的报告视为 Load Test 报告中统计、详情报告和 QoS 报告部分中浏览器测试报告的子节点。
对于每个浏览器测试和相关请求,Load Test 都将记录与网络相关的统计数据。这些数据将在 Load Test 报告中统计部分的网络客户端报告表格中获得。(详情请参阅Statistics)。
Load Test 报告的统计部分显示如下所示的浏览请求:
Load Test 报告的详情报告部分显示如下所示的浏览请求:
Load Test 报告的 QoS 部分显示如下所示的浏览请求:
您可以以二进制、HTML、XML、GIF 和 CSV 的格式对单个负载测试进行保存。并非所有报告都可以以所有格式保存。仅二进制格式的报告才可在负载测试工具中重新打开。
您还可以保存包含测试信息、直方图和表格的综合性 Load Test 报告。这个选项在命令行中也可用。
以下表格描述哪种格式应用到哪个报告,以及如何以可用的格式保存报告。
报告类型 | 应用于 | 包含 | 说明 |
---|---|---|---|
二进制(.rpt) | 所有报告视图 | 所有报告 | 右键点击活动的报告区域,选择保存为二进制。 |
HTML (.htm, .html) | 所有报告视图 | 所有报告 | 右键点击活动的报告区域并选择查看报告,然后使用浏览器控件保存报告。 |
XML (.xml) | 统计报告视图 | 所选报告 | 右键点击统计报告视图中的活动报告区域并选择导出 XML。 |
Image/GIF (.gif) | 详细报告图表和直方图 | 所选报告 | 右键点击详细报告图表选项卡或直方图选项卡中活动报告区域并选择保存图表。 |
逗号分隔值 (.csv) | 统计报告视图或详细报告错误 | 所选报告 | 右键点击统计报告视图中的表格区域并选择导出表。 |
若要打开二进制格式的报告,则前往文件> 打开并找到想要打开的 .rpt 文件。
若要保存 Load Test 报告的一部分:
间隔报告的统计数据和 QoS 指标将根据选择而重新计算。
在保存 Load Test 报告的一部分时,请记住,报告数据大约每隔 3 秒收集和保存一次。当保存报告的一部分时,将保存包含在选择项中的所有间隔。当选择表示该间隔的图表节点时,将选择一个间隔。 例如,下图所示的 8.5 秒到 14 秒选择包括 9.1 秒和 12.1 秒的图形节点,它们代表了以下数据收集间隔:
这两种间隔将保存在报告中。保存的报告间隔将包含两个图表点。同时属于两种间隔的单个点击将保存在报告中。 |
除了以 HTML 格式保存并查看 Load Test 报告外,还可以根据选择的不同参数自定义包含在这些 HTML 报告中的图表视图。
若要配置 HTML 报告中显示的图表视图:
日志范围:如果您想使用对数刻度,请启用日志范围。对数刻度允许您在同一图表中看到多个线条(即使显示的值彼此相距很远)。
在项目中保存:点击该选项将报告保存到当前项目。默认该项目生成的下一个 Load Test 报告具有保存的 HTML 报告选项。然而,如果是单独的报告(从磁盘而非当前项目的一部分加载),在项目中保存按钮将不可用。
将负载测试以二进制报告保存之后,您可以将这些报告加载到 Load Test 中,并比较和对比各种详细的报告参数。例如,运行并保存负载测试之后,您会发现特定操作的执行时间特别慢。在进行必要更改以改进执行时间后,可以对新的改进服务/应用程序进行负载测试,然后将其详情报告与之前保存的报告进行比较,以查看操作更改是否会导致任何新的错误。
在 Load Tests 选项卡中有一个报告节点,您可以在该节点上添加综合报告。综合报告包含对已保存的 Load Test 报告的引用。来自这些不同报告的详情报告参数可以在覆盖图中查看,从而可以比较可能发生的任何差异。
查看比较多个报告之前,您必须先将报告加载到 Load Test 中。若要加载组合报告,完成以下步骤:
点击右侧 GUI 面板底部 New,浏览到打开的对话框中已保存的报告文件(.rpt)并将其打开。对应所打开文件的节点以斜体字的形式显示在负载测试树中的综合报告节点下。
以斜体字形式显示综合报告条目,强调其是对报告的引用。默认情况下,综合报告没有加载,显示为灰色。综合报告加载后,显示为黑色。 |
右键点击综合报告节点,然后选择加载全部。Load Test 将加载您添加的每个综合报告。
您还可以通过选择综合报告节点下合适的节点并点击右侧 GUI 面板中的加载来加载单个综合报告。 |
加载多个 Load Test 报告之后,您可以选择负载测试树中“报告”节点下的综合报告节点,以配置和比较综合报告。在综合报告控件中以下选项可用。
有效报告允许您访问测试执行期间运行负载测试场景所收集到的所有数据,而不必停止负载测试。
有效报告包含到打开有效报告时为止收集的负载测试数据;它包括标准 Load Test 报告的所有数据、统计数据、单个点击数据、通讯报文以及错误详情(如果这些数据都被配置为需要记录)。可以在负载测试场景运行的任何时候刷新有效报告。
有效报告应该只在您需要在负载测试进程视图中查看不可用的负载测试详情时使用。例如,如果您想在负载测试运行时查看错误详情。
若要访问有效报告:
您可以使用与标准 Load Test 报告相同的方式操作并保存有效报告。
若要使用最新数据刷新有效报告,请点击报告视图标题中的刷新。
有效报告可用于定期评估在命令行模式下运行的负载测试进程。这对于从配置为长时间运行的负载测试获得反馈尤其有价值。
以命令行模式运行测试时,您可以使用与以 GUI 模式运行测试的相同方式访问有效报告。
在系统崩溃或应用程序关闭之后,通常可以使用 Load Test 报告恢复功能来恢复负载测试数据。若要查看可恢复的报告:
恢复 Load Test 报告后,您可以将其保存为您选择的格式。
以下是在 Load Test 报告中使用的一些术语定义:
下面的示意图说明了这些指标如何与实际的测试操作对应。
前两个示意图显示的是请求发送时间:
现在,消息正在从服务器传输到服务器,包括应用程序“思考时间”:
接下来两个示意图显示的是响应接收时间:
最后一个示意图显示了上述操作的总执行时间是多少:
审查 Parasoft Load Test 结果时,您可能偶尔会看到“连接重置”错误。
基本上,“连接重置”错误通常由超负荷的服务器生成,在这种情况下,它是由 OS TCP 堆栈引起的,并作为 Java 网络异常传播到应用程序层。
更详细地说,“连接重置”不是 Parasoft 负载测试独有的错误信息;它由 Java 生成,并对应指定的低级事件。当 Java 使用 RST(reset 的缩写)消息终止连接时,它将报告“连接重置”(在本例中,JVM 运行负载测试工具)。如果 JVM 在服务器端遇到任何过早关闭的连接,就会发生这种情况。过早关闭的连接意味着在负载测试还在接收响应时,服务器关闭了连接。进而导致负载测试 JVM 强制发出“重置”,从而终止连接。这不是 Load Test 的功能;相反地,它是 JVM 为了遵循 TCP 协议规范而采取的一种行为。
很明显,Load Test 明显生成了连接设置,因为重置意味着某一端的连接已经关闭(在本例中是服务器端)。如果服务器应用程序发出 RST,Load Test 将不会接收到任何信息,因为连接已经终止。
连接重置或许不容易理解。最简单的方法是将它视为已经发生的问题的一种症状。换句话说,重置连接并不是问题所在 — 问题在于服务器上过早关闭的连接导致了 Load Test 中的“连接重置”。
来自 java.net.Socket JavaDoc:
“在异常条件下,远程主机或网络软件(例如,TCP 连接情况下的连接重置)可能破坏潜在的连接。”
若要了解关于“连接重置”错误的更多信息,请参阅 http://download.oracle.com/javase/6/docs/technotes/guides/net/articles/connection_release.html。