内容


Rational Performance Tester 的高级报表功能

获得性能测试结果深入探视的五种方法

免费下载:IBM® Rational® Performance Tester 试用版  |  IBM® Rational® 测试人员资源工具包
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

本文提供了一个性能测试工程师可以采纳的五条建议,以获取性能结果的深度视角:

  1. 处理结果之中的异常情况
  2. 生成和分析百分比报告
  3. 创建并使用业务交易
  4. 在运行系列期间决定内容
  5. 将客户端的结果与服务器活动联系起来

1. 处理性能测试结果

在一份 IBM® Rational® Performance Tester 报告中,Response vs Time Detail 项描绘了每一页面上的响应时间。如果频繁发生的话,那么极高的响应时间,或者 异常(如图 1 所示)可以成为人们的关注点。分析原始的响应时间数据,能够提供关于程序性能方面的有用信息。

图 1. 页面响应时间之中的异常
异常高响应时间实例图
异常高响应时间实例图

为了决定百分比,对于 Rational Performance Tester 的运行您需要原始数据,以作出性能报告的图。下面是得到该数据的步骤:

  1. 右击报告的任意项,并选择 Export Report Counters to CSV
  2. 切换至保存输出的位置,并命名文件。
  3. 对于 Export Type,您可以选择 Full 以得到所有的数量值。
  4. 选择 Export overall resultsSplit output if columns exceed250(对于一个 Microsoft Excel 文件来说,250 是最大值)。
  5. 在您所指定的位置处,将会创建多个 .csv 文件。浏览带有该列名的文件:All_Hosts Pages Response Time Page_Name 平均间隔。
    注意:这里的 Page_Name 将会被测试日程中的页面标题替换,在测试日程中每一页面将会有一个单独的列。

查找图中显示异常的页面数据。现在您可以使用该数据来决定每一页面和故障排除潜在瓶颈的百分比。

2. 生成和分析百分比报告

百分比 响应时间是比 平均 响应时间更好的程序性能指示符。理解怎样生成和分析性能报告,将会帮助您更精确地理解系统行为。

生成百分比报告

在完成测试,并生成性能报告之后,您就可以生成一个百分比报告了。

  1. Performance Test Runs 窗口的报告下,右击 All Hosts
  2. 选择 HTTP Reports > Percentile Report,如图 2 中的下拉菜单选项所示,以打开带有默认分析目标的百分比报告。
图 2. 生成百分比报告
描述的三个菜单选项
描述的三个菜单选项

默认条件下,一个百分比报告显示了 85th,90th 与 95th 百分比。您可以定义一个新值以编辑默认的百分比分析目标。

  1. 选择 Window > Preferences
  2. 展开 Test 并点击 Percentile Analysis Targets
  3. 点击 Add 并输入一个需要的百分比值,如图 3 所示,或者选择一个已存在的目标并点击 Edit
  4. 点击 OK,然后点击 Apply 以实施您所做的更改。
图 3. 通用百分比分析目标
在偏好中定义百分比分析目标
在偏好中定义百分比分析目标
  1. 重新生成百分比报告以查看通用百分比目标值。

分析百分比报告

理论上来说,如果一个系列的 nth 百分比为 x,那么它意味着给定系列的 n% 值低于 x 值。所以,在 Rational Performance Tester 中队百分比响应时间报告来说,如果一个页面的 85th 百分比响应时间为 5 秒,那么它意味着 85% 的虚拟用户会得到 5 秒或者更好的响应时间。

当系统的用户经常要得到可接受的响应时间很重要时,百分比响应时间要比平均时间更合适。客户对用户经验的要求越高,考虑的百分比目标越高。随着响应时间异常情况值增加,该页面得到高百分比响应时间值的可能性也越高。

同样见于 处理性能测试结果之中的异常情况 部分。

3. 创建和使用业务交易

客户通常想知道业务交易方面的非功能性需求。一个业务交易一般涉及到多个页面;尽管如此,默认条件下,Rational Performance Tester 会在 页面的基础之上报告。生成业务交易方面的性能结果,使得业务用户能够更好地从报告中得到他们想要的。

对于业务基于交易的工具报告来说,首先您要定义业务交易,然后定义需要的性能工具。这样您就可以生成交易报告了。

定义业务交易

一个典型的业务交易是组成一些页面用例的代表(例如,通过需要的页面导航,以提高服务请求)。在您识别一个业务交易之后,您就可以按照下面的步骤来定义它了:

  1. 在 Rational Performance Tester 之中记录场景。
  2. 在组成交易的脚本中选择所有的页面。
  3. 右击并选择 Insert > Transaction
  4. 然后会出现一个弹出窗口,该窗口会询问是否想要将选择的对象移动到一个新的交易之中,点击 Yes 以回应该询问。
  5. 给交易起一个有意义的名字,然后 保存 测试。

支持性能需求

一个性能需求指定了性能可接受的限值,并帮助您确认服务层次的协议。您可以定义一些测试元素的性能需求。

按照下面的步骤,来支持业务交易方面的性能需求:

  1. 选择测试内容之中的交易。
  2. 在 Test Element Details 之下,点击 Advanced 项。
  3. 点击 Enable Performance Requirements 的复选框。
  4. 现在定义所有的交易性能需求,这些需求决定了测试的交易状态(通过或者不通过)。例如,如果它是一个需求,那么交易必须在不超过 120 秒的时间内完成:
    1. 选择 Maximum Transaction Execution Time [ms] 性能需求。
    2. 选择 <= operator(低于或者等于操作器)。
    3. 以毫秒为单元输入值。在本案例之中,输入 120000,如图 4 所示。
  5. 确保该交易中的页面思考时间与停留时间与这些需求相对应。因此,所有思考时间,停留时间,以及预期的页面响应时间的总和应该在这个范围之内。
图 4. 业务交易性能需求
Test Contents,Test Element Details 的选项
Test Contents,Test Element Details 的选项

图 4 的大图

生成交易性能报告

如果在测试中定义有交易,那么性能报告的 Summary 项中会具体报告交易性能工具上的选项,例如平均执行时间,最大或者最小执行时间,等等,如图 5 所示。

图 5. Business Transaction Summary 报告
带有交易执行时间和内容的表格
带有交易执行时间和内容的表格

为了得到每一个业务交易的具体报告,可以生成 Transaction ReportTransaction Percentile Report

  1. Performance Test Runs 窗口之中,右击测试运行。
  2. 选择 Display Transaction Report 或者 Display Transaction Percentile Report
  3. Transaction Report 会给出交易全局,交易运行数量,以及运行时的交易点。Transaction Percentile Report 显示了定义分析目标交易处的执行(运行)时间。查看 生成和分析百分比报告 部分以得到更多具体内容。

4. 决定指定系列持续时间的值

有些性能测试拥有稳定状态下指定持续时间内业务交易上的非功能性需求量。默认条件下,Rational Performance Tester 报告给出了运行总体持续时间完成交易的总体数量。这些结果包含了混合阶段所收集的统计数据,这里的页面点击很低。稳定状态下得到性能工具,使您能够更好地评价系统的执行状态。

您可以使用稳定状态作为报告的时间范围。您还可以指定起始和终止时间,来定义测试中您自己的时间范围。通过完成该操作,您就能看到只属于该时间范围的报告工具了。

按照以下的步骤来定义时间范围:

  1. 点击报告之上的 Server Health Detail 项。Hits -- Count [for run] 列列出了每一页面或者交易上的内容。
  2. 右击报告并选择 Change Time Range
  3. 在 Select Time Range 视图(图 6)中,点击 New Time Range 按钮以定义一个新范围。
  4. 然后您有两个选择:
    • 点击 Set to Steady State
    • 或者为测试运行期间的起始时间和终止时间输入一个值
图 6. 更改报告的时间范围
Description,Start Times,End Times 列
Description,Start Times,End Times 列
  1. 完成并等待报告在新时间范围内生成。

然后报告将会显示指定范围内来自范例的统计数据。

(同样见于 创建和使用业务交易 部分)。

5. 将报告与服务器活动和日志联系起来

当您在监视或者分析性能报告时,将报告性能与服务器端(例如,通过日志,追踪)联系起来是非常有用的。默认条件下,Rational Performance Tester 性能报告以秒显示了所有项上的时间(从零开始)。将报告的时间与服务器的时间匹配起来,可以帮助您将性能结果与服务器事件联系起来,并排除故障。

如果测试报告显示的是绝对时间,而不是从零开始的相对时间,那么将来自 Rational Performance Tester 客户端的性能功能与服务器端的日志活动联系起来是非常轻松的。

为了定制时间,您可以打开一个性能报告并完成以下的任务:

  1. 切换至工作项上的 Response Vs Time Detail 项。
  2. 右击并选择 Customize
  3. 对于 X Axis 区域,点击箭头以打开下拉菜单,并选择 Date & Time (Absolute) 以更高模板,如图 7 所示。
  4. 点击 OK 并刷新报告以反映出更改。
图 7. 定制报告上的时间
在报告中将 X 轴模板设置为 Date 与 Time
在报告中将 X 轴模板设置为 Date 与 Time

重点:
为了确保联系精确,将 Rational Performance Tester 主机控制器,代理以及测试下所有服务器上的时间调至同步化。


相关主题

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=756003
ArticleTitle=Rational Performance Tester 的高级报表功能
publish-date=09052011