本主题介绍负载测试工具执行负载测试后生成的报告,同时阐明了如何访问、自定义、保存、重新打开这些报告。章节目录:

预选详情报告选项

如果希望 Load Test 创建一份详情报告,您必须在测试执行前进行配置。默认情况下,Load Test 不会收集该报告的信息(为了简化测试过程)。

预选详情报告选项,Load Test 会根据其常规 Load Test 报告创建详细的场景报告。详细的场景报告将绘制场景运行所产生的每次“点击”。这是 Load Test 为虚拟用户测试生成的最详细的报告。因为该报告绘制了每次点击,所以您可以看到大多数点击出现在哪里,以及有多少点击落在正态分布之外。 

若要预选应用于项目中所有场景的详情报告选项:

  1. 请选择负载测试选项卡中的场景节点。报告设置将出现在右侧 GUI 面板。

    如果负载测试选项卡未激活,请右键点击项目选项卡的任何位置并从快捷菜单中选择创建负载测试
  2. 报告设置面板中,启用录制图形数据和错误详情。在完成负载测试之后,将创建详细的场景报告。有关详细报告的更多信息,请参阅Detailed Reports
    启用记录图表数据和错误细节之后,以下选项可供选择:

查看报告

负载测试完成之后,可在右侧 GUI 面板中获得其测试结果。稍后若要打开此窗口: 

负载测试结果将在右侧 GUI 面板中显示,该面板具有以下菜单选项:

测试树选择面板导航和选项

在测试树选择面板中,点击测试树面板下的选择按钮下拉菜单中的合适项,可以选择所有测试所有测试套件所有测试请求(如果报告中有请求)、所有测试树节点:

测试树选择面板中的每个树节点都有相同的下拉菜单:

可扩展的选项面板显示测试树选择面板的其他控件。路径单一选择选项(默认选中)确保在每个树路径上选择的树节点不超过一个。这可以防止在测试树选择面板控制的视图中不希望的父节点和子节点数据的报告累积。 

传播选择选项(默认为选中)允许将您选择应用于整个子树。例如,如果您选择/未选择拥有子节点的树节点,所有子节点都将被选中/不被选中。

理解可用报告

本节描述以下报告类型:

测试信息

测试信息报告以文本格式列出了基本测试参数和结果。还将为已配置的指标显示服务质量报告摘要。

统计

统计信息报告列出了负载测试的详细数据,例如运行时间和故障计数。

该报告显示了单个测试的数据,以及它们所属的测试套件(如果存在这样的数据)。测试和测试套件都是在每个单独的测试或测试套件完成后的负载测试期间生成的。稍后这些单个报告将用来计算统计信息视图中显示的汇总值。

统计信息报告可以在分层结构或平面布局中查看。 

这是分层次的布局:

这是平面布局:

输出类型

查看统计报告时,可以使用输出类型菜单。输出类型菜单确定显示的哪个报告输出类型。该菜单提供两种类型的报告,每种报告显示不同的信息列。报告类型不同点在于:

如果某些机器被配置为在高流通量模式下运行,可用报告类型将为:

自定义可用的统计报告列

您可以删除面板中显示的用于通用和网络客户端报告的选定列,以及/或为每种报告类型添加附加列。

若要自定义可用的报告列:

  1. 右键点击统计报告的表格区域并选择选择列
  2. 使用“列配置”对话框中的控件来指定您希望显示的列。
  3. (可选)如果您希望 Load Test 对项目的所有后序 Load Test 报告应用相同的配置,请在关闭对话框之前点击保存配置

查看统计报告测试故障

若要访问有关特定测试故障的详情,请双击相关报告行。您可以通过定位表示该测试的行,然后检查该行中的“故障计数”列中的的数字来确定给定的测试是否失败。Load Test 将显示测试的最后一个错误的详情。您可以在Viewing Detailed Report Table Content中所述的“详细报告”部分查看特定测试的所有错误。

详情报告

详情报告保存负载测试期间收集的所有数据样本,以及发生的所有错误的详细信息。这是 Load Test 为负载测试生成的最详细的报告。因为该报告绘制了每次点击,所以您可以看到大多数点击出现在哪里,以及有多少点击落在正态分布之外。所有服务器机器的结果都显示在同一张图表中;不同服务器的结果用不同颜色标示。

详情报告包含以下选项:

此外,还可以通过右侧 GUI 面板顶部的菜单筛选详情报告每个选项中的结果。显示的负载测试详情可通过机器配置文件测试来过滤。

请注意,测试树过滤器可提供包括测试套件、测试和用于浏览器测试、浏览器请求报告的图表。当评估被测系统的负载时,请留意这一点,并选择适用于您的测试场景报告的合适子集。例如,如果运行一个基于 SOAtest SOAP 客户端的负载测试,您可能希望只选择测试节点(参见下面的截图),以查看对被测系统的 SOAP 客户端请求的图表。只有当您想要查看包含多个测试的事务图时,才会选择测试套件节点。

查看详细报告图表内容

以下选项显示在详细报告图表选项卡图例中:

自定义详细报告图表内容

有多种方法可以自定义“详细报告图表”选项卡的报告内容。

若要过滤显示的图表数据:

若要自定义图表选项卡中的报告参数:

若要将报告的 Y 轴从默认线性刻度更改为对数刻度(反之亦然):

若要使用指定颜色填充图表区,请启用填充图表地区

若要在负载测试期间将单个点击作为单个点显示:

为了减少图表点的数量,在长时间运行负载测试(12 小时或更长时间)有大量报告的情况下,请点击箭头按钮展开减少图标点框。可选择以下选项:

若要放大图表的特定区域:

  1. 点击并拖动灰色框,将其放置在您关注的区域周围。
  2. 右键点击新建框并选择放大选取范围

若要放大或缩小图表:

若要移动图表:

若要返回到原始图表尺寸和/或位置:

若要以 CSV 格式导出并保存单个点击:

  1. 通过从机器配置文件测试菜单中做出适当的选择,筛选显示的单个点击。
  2. 请启用显示单个点击。负载测试期间发生的所有单个点击都显示在图表选项卡中。

    只有预选了记录个体点击选项时,才能在详情报告中显示单个点击,该选项来自场景配置面板的报告设置选项卡。更多信息,请参阅Preselecting Detailed Report Options
  3. 完成下列其中一项:
  4. 在打开的对话框中,选择要保存 CSV 文件的位置。

若要以 CSV 格式导出并保存图表点:

  1. 通过从机器配置文件测试菜单中做出适当的选择,筛选显示的图表点。
  2. 完成下列其中一项:
  3. 在打开的对话框中,选择要保存 CSV 文件的位置。

    只有预选了记录个体点击选项时,导出图表点才可用,该选项来自场景配置面板的报告设置选项卡。更多信息,请参阅Preselecting Detailed Report Options

若要自定义详细报告图表颜色:

  1. 右键点击图表选项卡图例中所需栏并选择改变颜色改变颜色快捷菜单中有两个子菜单:打开选择颜色对话框。
  2. 根据对话框需求操作配色方案,然后点击 OK

查看详细报告直方图

直方图表示所选定变量(执行时间、请求大小、响应大小)获得的值的分布。

若要控制直方图所关注的内容:

查看详细报告表格内容

在查看详细报告“表格”选项卡中的任何错误或单个点击之前,必须先从“图表”选项卡中选择一个时间间隔,完成以下操作之一:

若要查看“表格”选项卡中的错误,请完成“图表”选项卡中的以下操作:

  1. X 轴框中选择合适的参数值,以及图表底部合适的选项,以确定图表报告。
  2. 按住键盘上 ALT 键的同时按住鼠标左键移动鼠标,将灰色框放置在图表所需时间间隔上。若要取消选择灰色框,请按 ALT 键,然后鼠标点击灰色框。
  3. 右键点击灰色框并选择显示录制细节。“表格”选项卡打开并显示在所选定时间间隔内收集的所有记录的详细信息。
    如果还未选择时间间隔,“表格”选项卡在您右键点击图表并选择显示录制细节后打开并显示所有可用详情。

    明细列显示测试的错误字符串(如果测试失败)或者是 [通讯报文] 标签(如果测试成功)。双击行以查看测试的错误详情或通讯报文。
    “表格”选项卡默认显示前 300 个详细结果。如果有超过 300 个详情(如果选择记录所有详情或选择记录超过前 300 个详情),则菜单将会出现在“表格”选项卡顶部,以及允许您浏览详细信息分组的导航按钮。
  4. 若要访问有关特定测试结果的详情,请双击相关报告行。

若要查看“表格”选项卡中的单个点击,请完成“图表”选项卡中的以下操作:

  1. 请启用显示个体点击
  2. Y 轴框中选择合适的参数值。
  3. 按住键盘上 ALT 键的同时按住鼠标左键移动鼠标,将灰色框放置在图表所需时间间隔上。若要取消选择灰色框,请按 ALT 键,然后鼠标点击灰色框。
  4. 右键点击灰色框并选择显示个体点击。“表格”选项卡打开并显示所选定时间间隔内发生的所有单个点击。

    除了选择时间间隔,您还可以通过点击并拖动鼠标将灰色框放置在要关注的点周围,然后右键点击并选择显示单个点击,以在“图表”选项卡中选择几个点。
    您还可以双击“图表”选项卡中的一个单点,“表格”选项卡将打开并显示所选单点的信息。
    如果录制了点击的详细信息,“个体点击”表格的明细列将包含测试的错误详情(如果测试失败)或 [通讯报文] 标签(如果测试成功)。双击行以查看记录了详细信息的错误详情或测试的通讯报文。

查看虚拟用户点击

您可以通过右键点击“个体点击”表格中的行查看虚拟用户的所有点击率,然后选择显示虚拟用户的所有点击

这将打开一个包含所选虚拟用户的所有点击的表格表。 

若要返回到“个体点击”表格,请点击显示之前的表<<

自定义可用的报告列

若要自定义“表格”选项卡视图中的可视行:

  1. 右键点击表格选项卡的表格区域并选择选择列
  2. 使用“列配置”对话框中的控件来指定您希望显示的列。
  3. (可选)如果您希望 Load Test 对项目的所有后序 Load Test 报告应用相同的配置,请在关闭对话框之前点击保存配置

服务质量报告

服务质量(QoS)报告显示您在 Load Test 中配置的指标,并显示一个概要选项卡和一个明细选项卡。

概要选项卡显示度量指标列、描述列和状态列。QoS 报告中的每一行对应一个 QoS 指标。

明细选项卡显示为所选定场景配置的可用指标的结果。明细选项卡还显示从指标度量列表中选择的指标的名称、参数和注意事项。

您可以通过从指标列表中配置任意指标的参数并点击应用到报告,以进一步自定义报告中的指标。您还可以从指标列表(CTRL-点击)中选择多个指标,然后点击应用到报告。这将更新 Qos 报告和测试信息视图中可见的 QoS 结果,但不会反映在场景视图的 QoS 节点中。

有关使用和配置服务质量指标的更多信息,请参阅自定义场景的服务质量指标

负载测试配置报告

您还可以右键点击负载测试工具选项卡的任何位置,并选择查看结构报告> HTML/XML。在浏览器中显示负载测试配置报告。该面板包含以下信息:

Web(浏览器)测试的特殊报告

负载测试执行期间,使用浏览器测试工具的 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) 所有报告视图所有报告

右键点击活动的报告区域并选择查看报告,然后使用浏览器控件保存报告。
有关 HTML 报告选项的更多信息,请参阅 Configuring HTML Report Options

XML (.xml)统计报告视图所选报告

右键点击统计报告视图中的活动报告区域并选择导出 XML

Image/GIF (.gif)详细报告图表和直方图所选报告

右键点击详细报告图表选项卡或直方图选项卡中活动报告区域并选择保存图表

逗号分隔值 (.csv)统计报告视图或详细报告错误所选报告

右键点击统计报告视图中的表格区域并选择导出表

若要打开二进制格式的报告,则前往文件> 打开并找到想要打开的 .rpt 文件。 

保存报告的一部分

若要保存 Load Test 报告的一部分:

  1. 打开 Load Test 报告的详情报告视图。
  2. 选择希望保存的间隔。若要选择一个间隔,则按住键盘上 ALT 的同时按住鼠标左键移动鼠标,将灰色选择框放置在图表所需时间间隔上。
  3. 释放 Alt 键,在图表中点击鼠标右键并前往保存为> 二进制> 选择的间隔
  4. 在文件选择对话框中输入报告文件名称。

间隔报告的统计数据和 QoS 指标将根据选择而重新计算。

在保存 Load Test 报告的一部分时,请记住,报告数据大约每隔 3 秒收集和保存一次。当保存报告的一部分时,将保存包含在选择项中的所有间隔。当选择表示该间隔的图表节点时,将选择一个间隔。 

例如,下图所示的 8.5 秒到 14 秒选择包括 9.1 秒和 12.1 秒的图形节点,它们代表了以下数据收集间隔: 

  • [6.1-9.1] 秒
  • [9.1-12.1] 秒。

这两种间隔将保存在报告中。保存的报告间隔将包含两个图表点。同时属于两种间隔的单个点击将保存在报告中。

配置 HTML 报告选项

除了以 HTML 格式保存并查看 Load Test 报告外,还可以根据选择的不同参数自定义包含在这些 HTML 报告中的图表视图。

若要配置 HTML 报告中显示的图表视图:

  1. 通过完成以下其中一项打开 HTML 报告选项对话框:
  2. 通过为每个条目自定义以下选项来配置图表条目:
  3. 点击查看报告。HTML 报告将在您的 Web 浏览器中打开,并显示自定义的图表视图。

对比 Load Test 报告

将负载测试以二进制报告保存之后,您可以将这些报告加载到 Load Test 中,并比较和对比各种详细的报告参数。例如,运行并保存负载测试之后,您会发现特定操作的执行时间特别慢。在进行必要更改以改进执行时间后,可以对新的改进服务/应用程序进行负载测试,然后将其详情报告与之前保存的报告进行比较,以查看操作更改是否会导致任何新的错误。

Load Tests 选项卡中有一个报告节点,您可以在该节点上添加综合报告。综合报告包含对已保存的 Load Test 报告的引用。来自这些不同报告的详情报告参数可以在覆盖图中查看,从而可以比较可能发生的任何差异。

加载组合报告

查看比较多个报告之前,您必须先将报告加载到 Load Test 中。若要加载组合报告,完成以下步骤:

  1. 右键点击 Load Test 选项卡中的报告节点并选择新的组合综合报告节点显示在报告节点下,“综合报告”控件显示在右侧 GUI 面板。
  2. 点击右侧 GUI 面板底部 New,浏览到打开的对话框中已保存的报告文件(.rpt)并将其打开。对应所打开文件的节点以斜体字的形式显示在负载测试树中的综合报告节点下。

    以斜体字形式显示综合报告条目,强调其是对报告的引用。默认情况下,综合报告没有加载,显示为灰色。综合报告加载后,显示为黑色。
  3. 重复步骤 2 直到添加了要加载的所有综合报告。
  4. 右键点击综合报告节点,然后选择加载全部。Load Test 将加载您添加的每个综合报告。

    您还可以通过选择综合报告节点下合适的节点并点击右侧 GUI 面板中的加载来加载单个综合报告。
  5. (可选)您可以访问每个综合报告的测试信息、统计详情报告视图,访问方式是通过选择 Load Test 树中所需综合报告节点并选择右侧 GUI 面板中查看下拉菜单。

处理和比较综合报告

加载多个 Load Test 报告之后,您可以选择负载测试树中“报告”节点下的综合报告节点,以配置和比较综合报告。在综合报告控件中以下选项可用。

查看有效 Load Test 报告 

有效报告允许您访问测试执行期间运行负载测试场景所收集到的所有数据,而不必停止负载测试。

有效报告包含到打开有效报告时为止收集的负载测试数据;它包括标准 Load Test 报告的所有数据、统计数据、单个点击数据、通讯报文以及错误详情(如果这些数据都被配置为需要记录)。可以在负载测试场景运行的任何时候刷新有效报告。

有效报告应该只在您需要在负载测试进程视图中查看不可用的负载测试详情时使用。例如,如果您想在负载测试运行时查看错误详情。

若要访问有效报告:

  1. 启动负载测试应用程序的新实例。
  2. 前往文件> 有效报告

您可以使用与标准 Load Test 报告相同的方式操作并保存有效报告。

若要使用最新数据刷新有效报告,请点击报告视图标题中的刷新

CPU 使用注意事项

查看以命令行模式运行的负载测试的有效报告

有效报告可用于定期评估在命令行模式下运行的负载测试进程。这对于从配置为长时间运行的负载测试获得反馈尤其有价值。 

以命令行模式运行测试时,您可以使用与以 GUI 模式运行测试的相同方式访问有效报告。

恢复 Load Test 报告

在系统崩溃或应用程序关闭之后,通常可以使用 Load Test 报告恢复功能来恢复负载测试数据。若要查看可恢复的报告:

  1. 前往文件> 恢复报告。恢复报告对话框将显示可恢复 Load Test 报告的开始日期/开始时间。恢复数据将在创建后 5 天删除。超过 5 天的报告数据将无法恢复。
  2. 选择一个报告然后点击 OK

恢复 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