本主题描述 Load Test 执行负载测试后生成的报告,同时阐明了如何访问、定制、保存、重新打开这些报告。在本章节中:

预选 Detailed Report 选项

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

预选 Detailed Report 选项提示 Load Test 除了创建常规负载测试报告外,还创建详细的方案报告。详细的方案报告将绘制方案运行所导致的每次“点击”。这是 Load Test 为虚拟用户测试生成的最详细的报告。因为该报告绘制了每次点击,所以您会知道大多数命中发生在何处,以及有多少点击不在正态分布之外。 

若要预选将应用于项目所有场景的 Detailed Report 选项:

  1. 请选择 Load Test 选项卡中的 Scenarios 节点。 Report Settings 将显示在右侧 GUI 面板。

    如果 Load Test 选项卡未激活,请右键单击 Projects 选项卡的任何位置并从快捷菜单中选择 Create Load Tests
  2. Report Settings 面板中, 选择 Record graph data and error details 多选框。在完成负载测试之后,将创建详细的场景报告。有关详细报告的更多详情,请查阅 Detailed Reports
    选择 Record graph data and error details 多选框之后,以下可供选择:

审查报告

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

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

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

在测试树选择面板中,您可以选择 All Tests, All Test Suites, All Test Requests (如果报告需要) All,或 None 测试树节点,通过选择测试树选择面板下 Select 按钮下拉菜单中的适当项:



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



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



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

了解可用报告

本节描述以下报告类型:

测试信息

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


统计信息

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

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

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

这是分层结构布局:



这是平面布局:


输出类型

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

如果一某些机器被配置为在 High Throughout Mode 下运行,可用报告类型将为:

自定义可用的统计报告列

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

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

  1. 请右键单击 Statics Report 的表区域。
  2. 从快捷菜单中选择 Select Columns
  3. 使用 Columns Configuration 对话框中的控件来指定您希望显示的列。
  4. (可选)如果您希望 Load Test 对项目的所有后序负载测试报告应用相同的配置,请在关闭对话框之前单击 Save Configuration

查看统计信息报告测试故障

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

详细报告

详细报告保存负载测试期间收集的所有数据样本,以及发生的所有错误的详细信息。这是 Load Test 为负载测试生成的最详细的报告。因为该报告绘制了每次点击,所以您会知道大多数命中发生在何处,以及有多少点击不在正态分布之外。所有服务器机器的结果在同一个图表中显示;并彩色编码不同的服务器结果。

详细报告包含以下选项:

此外,还可以通过右侧 GUI 面板顶部的下拉菜单筛选详细报告每个选项中的结果。显示的负载测试详情可通过 MachinesProfiles,和 Tests来过滤。



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


查看详细报告图表内容

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

自定义详细报告图表内容

有多种方法可以自定义 Detailed Reports Graph 选项卡的报告内容。若要过滤显示的图表数据:

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

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

若要使用指定颜色填充图表区,请选择 Fill graph areas 多选框。

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

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

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

  1. 单击并拖动灰色框,将其放置在您关注的区域周围。
  2. 右键单击新创建框,然后从快捷菜单中选择 Zoom to selection

若要放大或缩小图表:

若要移动图表:

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

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

  1. 通过从 MachinesProfiles,和 Tests 菜单中做出适当的选择,筛选显示的单个点击。
  2. 选择 Show Individual Hits 多选框。负载测试期间发生的所有单个点击都显示在图表选项卡中。

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

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

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

    只有预选了 Record individual hits 选项时,Export Graph Points 才可用,该选项来自场景配置面板的 Report Settings 选项卡。有关更多详情,请查阅 Preselecting Detailed Report Options

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

  1. 右键单击 Graph 选项卡图例中所需栏,并从快捷菜单中选择 Change ColorChange Color 快捷菜单中有两个子菜单:打开 Select color 对话框。



  2. 根据对话框需求操作配色方案,然后单击 OK

查看详细报告柱状图

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

若要控制柱状图所关注的内容:

查看详细报告表格内容

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

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

  1. X axis 框中选择合适的参数值,以及图表底部合适的多选框,以确定图表报告。
  2. 选中键盘上的 Alt 同时按住鼠标左键移动鼠标,将灰色框放置在图表所需时间间隔上。若要取消灰色框的选择,请按 Alt 键,然后鼠标单击灰色框。



  3. 右键单击灰色框并从快捷菜单中选择 Show Recorded Details 。Table 选项卡打开并显示在所选定时间间隔内收集的所有记录的详细信息。
    如果还未选择时间间隔,“表格”选项卡在您右键单击图表并从快捷菜单中选择 Show Recorded Details 后打开并显示所有可用详情。



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

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

  1. 选择 Show Individual Hits 多选框。
  2. Y axis 框中选择合适的参数值。
  3. 选中键盘上的 Alt 同时按住鼠标左键移动鼠标,将灰色框放置在图表所需时间间隔上。若要取消灰色框的选择,请按 Alt 键,然后鼠标单击灰色框。



  4. 右键单击灰色框并从快捷菜单中选择 Show Individual Hits 。Table 选项卡打开并显示所选定时间间隔内发生的所有单个单击。



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

查看虚拟用户点击率

您可以通过右键单击“Individual Hits”表格中的行查看虚拟用户的所有点击率,然后从快捷菜单中选择 Show All Hits of This VU



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



若要返回到“Individual Hits”表格,请单击 Show Previous Table << 按钮。

自定义可用的报告列

若要自定义Table 选项卡视图中的可视行

  1. 请右键单击Table 选项卡的表区域。
  2. 从快捷菜单中选择 Select Columns
  3. 使用 Columns Configuration 对话框中的控件来指定您希望显示的列。
  4. (可选)如果您希望 Load Test 对项目的所有后序负载测试报告应用相同的配置,请在关闭对话框之前单击 Save Configuration

服务质量报告

服务质量(QoS)报告显示您在 Load Test 中配置的度量,并显示一个 Summary 选项卡和一个 Details 选项卡。

Summary 选项卡显示 Metric、Description、Status 列。QoS 报告中的每一行对应一个 QoS 度量。



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



您可以通过从 Metric 列表中配置任意度量的参数并单击 Apply to Report 按钮,以进一步自定义报告中的度量。您还可以从 Metrics 列表(CTRL-click)中选择多个度量,然后单击 Apply to Report 按钮。这将更新 Qos 报告和测试信息视图中所见的 QoS 结果,但不会反映在场景视图的 QoS 节点中。

有关使用和配置服务质量度量的更多详情,请查阅 Customizing QoS Metrics for Scenarios

负载测试配置报告

您还可以右键单击 Load Test 选项卡的任何位置,并选择 View Structure Report> HTML/XML。在浏览器中显示负载测试配置报告。该面板包含以下信息:

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

负载测试执行期间,使用浏览器测试工具的 web 功能测试会发送多个请求(可在 SOAtest 负载测试透视图下的测试编辑器中看到该请求)。您可以将这些请求的报告视为负载测试报告中统计信息、详细报告和 QoS 报告部分中浏览器测试报告的子节点。

对于每个浏览器测试和相关请求, Load Test 都将记录与网络相关的数据。这些数据将在负载测试报告中 Statistics 部分的网络客户端报告表格中获得。(有关更多详情,请查阅 Statistics )。

负载测试报告的 Statistics 部分显示如下所示的浏览请求:



负载测试报告的 Detailed Report 部分显示如下所示的浏览请求:



负载测试报告的 QoS 部分显示如下所示的浏览请求:


保存和重新打开报告

您可以以二进制、HTML、XML、GIF 和 CSV 的格式对单个负载测试进行保存。并非所有报告都可以以所有格式保存。仅二进制格式的报告才可在 Load Test 中重新打开。

您还可以保存包含测试信息、柱状图和表格的综合性负载测试报告。这个选项在命令行中也可用。

以下表格描述哪个格式应用到哪个报告,和如何以可用格式保存报告。


报告类型应用于包含说明
二进制(.rpt)所有报告视图所有报告
  1. 右键单击激活的报告区域。
  2. 从快捷菜单中选择 Save As Binary
HTML (.htm, .html) 所有报告视图所有报告
  1. 右键单击激活的报告区域。
  2. 选择 View Report
  3. 使用浏览器控件保存报告。
    有关 HTML 报告选项的更多信息,请查阅 Configuring HTML Report Options
XML (.xml)统计信息报告视图所选报告
  1. 右键单击统计信息报告视图中的表区域查看。
  2. 从快捷菜单中选择 Export XML
Image/GIF (.gif)详细报告图表和柱状图所选报告
  1. 右键单击详细报告图表选项卡或柱状图选项卡中激活的报告区域。
  2. 从快捷菜单中选择 Save Graph
Comma Separated Values (.csv)统计信息报告视图或详细报告错误所选报告
  1. 右键单击统计信息报告视图中的表区域查看。
  2. 从快捷菜单中选择 Export Table


若要打开二进制格式的报告,选择 File> Open,然后使用文件选择器来指定要打开的 .rpt 文件。 

保存报告的一部分

若要保存负载测试报告的一部分:

  1. 打开负载测试报告的 Detailed Report 视图。
  2. 选择希望保存的间隔。若要选择一个间隔,选中键盘上的 Alt 同时按住鼠标左键移动鼠标,将灰色选择框放置在图表所需时间间隔上。
  3. 释放 Alt 按钮,图表中右键单击并选择 Save As> Binary> Selected Interval 命令。



  4. 在文件选择对话框中输入报告文件名称。

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

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

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

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

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


配置 HTML 报告选项

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

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

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

对比负载测试报告

将负载测试以二进制报告保存之后,您可以将这些报告加载到 Load Test 中,并比较和对比各种详细的报告参数。例如,运行并保存负载测试之后,您会发现特定操作的执行时间特别慢。为了提高执行时间,进行必要更改之后,您可以为新的和增强版的服务或应用程序运行负载测试,然后将以前保存的报告和现在的详细报告进行对比,进而查看操作更改是否造成了新的错误。

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

加载组合报告

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

  1. 右键单击 Load Test 选项卡中的 Reports 节点,并从快捷菜单中选择 New CompositeReport Composite 节点显示在 Report 节点下,Report Composite 控件显示在右侧 GUI 面板。
  2. 点击右侧 GUI 面板底部的 New 按钮,浏览到显示对话框中已保存的报告文件(.rpt)并将其打开。对应所打开文件的节点以斜体字的形式显示在负载测试树中的 Report Composite 节点下。

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

    您还可以通过选择 Report Composite 节点下合适的节点并单击右侧 GUI 面板中的 Load 按钮加载单个报告组合。
  5. (可选)您可以访问到每个报告组合的 Test Information, StatisticsDetailed Report 视图,访问方式是通过选择负载测试树中所需报告组合节点并选择右侧 GUI 面板中 View 下拉菜单。

处理和比较组合报告

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

查看活跃的负载测试报告 

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

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

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

若要访问活动报告:

  1. 启动负载测试应用程序的新实例。
  2. 选择 File> Active Report

您可以使用与标准负载测试报告相同的方式操作并保存活动报告。

若要刷新活动报告数据为最新状态:

CPU 使用说明

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

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

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

恢复负载测试报告

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

  1. 选择 File> Recover Report。恢复报告对话框将显示可恢复负载测试报告的开始日期/开始时间。恢复数据将在创建后 5 天删除。超过 5 天的报告数据将无法恢复。



  2. 选择一个报告然后单击 OK

恢复负载测试报告后,您可以将其保存为您选择的格式。 

报告术语定义

以下是在负载测试报告中使用的一些术语定义:

下面的图解说明了这些度量如何与实际的测试操作对应。

前两个图解显示的是请求发送时间:



现在,消息正在从服务器传输到服务器,包括应用程序“考虑时间”。



接下来两个图解显示的是响应接收时间:


最后一个图解显示了上述操作的总执行时间是多少:


故障排除:连接重置错误

审查 Parasoft Load Test 结果时,您可能偶尔会看到“连接重置”错误。 

基本上,“连接重置”错误通常由超负荷的服务器生成,在这种情况下,它是由 OS TCP 堆栈引起的,并作为 Java 网络异常传播到应用程序层。

更详细地说,“连接重置”不是 Parasoft Load Test 独有的错误信息;它由 Java 生成,并对应指定的低级事件。当 Java 使用 RST(reset 的缩写)消息终止连接时,它将报告“连接重置”(在本例中,JVM 运行 Load Test )。如果 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 。