内容


您的移动应用程序很慢吗?非常耗费资源吗?

如何使用 Rational Test Workbench 分析移动应用程序的性能

Comments

背景知识

鉴于移动智能手机的使用和移动应用程序开发的爆炸式增长,移动测试自动化对于成功、快速地交付高质量的移动应用程序来说是一个关键要求。移动应用程序的自动化功能测试有助于确保移动应用程序所需的功能和应用程序中的用户流程像预期的那样工作。然而,移动应用程序的功能测试以外的其他需求也非常明显。那些应用程序还有许多方面的性能需要测量和增强。移动应用程序的性能和应用程序的最终用户体验之间有着直接的联系。

IBM® Rational® Test Workbench 软件提供执行 Andr​​oid 和 iOS 应用程序的自动功能测试的能力。现在,Rational Test Workbench v8.6 中提供了一些新特性,这些功能使得移动应用程序开发人员和测试人员可以完成其移动应用程序的性能测试,分析结果,并用这些结果来优化和提升应用程序的性能,从而完善最终用户的体验。

本文演示了如何使用 IBM Rational Test Workbench V8.6 对移动应用程序进行两种重要的性能测试:

  • 响应时间测量(截止至 v8.6 版本,仅适用于 Android)
  • 资源监测(适用于 Android 和 iOS)。

先决条件

  • Rational Test Workbench Eclipse Client v8.6
  • Android 2.2 至 4.4.2
  • iOS 6.0 至 7.1.1

备注:本文中的数字是使用 Rational Test Workbench Eclipse Client v8.6、Android 4.2 模拟器(API 级别 17)和 Wiki Encyclopedia 2.87 应用来获得的。

可以测量的性能特征

您可以在 Rational Test Workbench v8.6 中测量移动应用程序的两个性能特征:

  • 响应时间:捕获每个测试步骤的响应时间。这包括完成每个步骤所需的总时间,从移动设备上的初始用户操作开始,发送到服务器的请求,从服务器接收到的响应,最终,由移动应用程序完成响应处理。这使得您可以了解每个用户操作或测试步骤花费了多长时间,以及如何受到用户在 Rational Test Workbench Eclipse Client 配置的同步策略的影响。这些信息显示在统计报告的 Step Performance 选项卡中。
    备注:响应时间支持仅适用于 Android。
  • 资源监测:定期捕获(您可以配置要捕获什么)移动设备上使用的各种资源的详细信息,其中包括:
    • CPU
    • 物理内存
    • 虚拟内存
    • 电池电量
    • 网络发送和接收的流量。

在可能的情况下,应用程序上下文(例如,移动应用程序特定的 CPU 使用率)和整体设备上下文(例如,整体设备的 CPU 使用率)的指标都会被捕获。所收集的这些指标都在统计报告的 Resources 选项卡中以简单的趋势图表显示。

备注以下资源监测计数器均适用于 Android 和 iOS:CPU(应用程序和设备)、物理内存(应用程序和设备)、虚拟内存(应用程序)、电池电量(设备)、网络接收的流量(应用程序和设备)、网络发送的流量(应用程序和设备)。

运行测试

本文的这个部分将探讨测量用户操作的响应时间和监测其移动应用程序的资源所需要采取的步骤。

安装客户端,确保移动功能测试成功运行

添加到 Rational Test Workbench 的移动性能测试功能以现有的功能性测试功能为基础,因此需要执行一些安装和配置。developerWorks 文章:使用 IBM Rational Test Workbench 执行移动测试 介绍了创建功能测试的设置所需遵循的步骤。按照相同的步骤,使用 Rational Test Workbench Eclipse Client 连接到您的设备或模拟器,并运行移动功能测试。

配置 Rational Test Workbench 移动客户端为被动模式

为了运行移动性能测试(尤其是资源监测),移动客户端需要使用被动模式。将您的移动客户端设置为被动模式:

  1. 在您的设备或模拟器上转到 IBM Rational Test Workbench Mobile Client。
  2. 选中 Enter passive mode 选项,如图 1 所示。
图 1. 进入被动模式
被动模式 Workbench 控制测试执行
被动模式 Workbench 控制测试执行
  1. Mobile Client 现在处于被动模式中,如图 2 所示。
图 2. 被动模式
被动模式屏幕
被动模式屏幕

在启用资源监测的情况下初始化移动测试运行

启用资源监控选项,然后从 Rational Test Workbench Eclipse Client 运行移动测试。为此:

  1. 从 Rational Test Workbench Eclipse Client 开始,打开要运行的移动测试。
  2. 在 Eclipse Client 中打开测试后,单击 Run Test 按钮,如图 3 所示。
图 3. 运行测试
运行测试
运行测试
  1. 在 Run Configuration 窗口中,选中 Resource Monitoring 复选框
  2. 指定 Polling Interval(以毫秒为单位),如图 4 所示。轮询时间间隔是在移动测试运行的过程中,从设备收集资源监测数据的频率。在这个针对 Response Time 测量的该面板中,不要求提供明确的选择。
  3. 单击 Finish 按钮。
图 4. 运行配置
运行配置
运行配置
  1. 移动测试启动,如图 5 所示。
图 5. 启动测试
启动测试
启动测试
  1. 运行移动测试至结束测试。在运行测试时,测试结果将显示在 Rational Test Workbench Eclipse Client 中。

评估测试结果

对于所运行的移动测试,会显示 3 种不同的测试报告:

  • Test Log
  • Mobile and Web UI Report
  • Mobile and Web UI Statistical Report
    Mobile and Web UI Report 显示在高层次的响应时间。利用统计报告,您可以向下钻取更加详细的信息。统计报告还包括资源监测数据。

统计报告有 3 个选项卡。

  • Overall
  • Step Performance
  • Resources

您可以导出统计报告(例如,使用 HTML 或 RTF 格式)作为离线参考。

Overall 选项卡

如图 6 所示,Overall 选项卡包括所运行的移动测试的摘要信息。摘要信息包括测试经过的时间、运行状态、通过的裁决,等等。

图 6. Overall 选项卡
Overall 选项卡
Overall 选项卡

Step Performance 选项卡

Step Performance 选项卡包括在移动测试运行期间测量的每个步骤的响应时间详细信息。默认情况下,报告显示了一个柱状图,列出响应时间最高的 10 个测试步骤。Step Response Time 图如图 7 所示。

图 7. Step Performance 选项卡中的 Step Response Time 图
Step Performance 选项卡中的 Step Response Time 图
Step Performance 选项卡中的 Step Response Time 图

报告选项卡中也提供了更详细的 Performance Summary 表。Performance Summary 表如图 8 所示。

图 8. Step Performance 选项卡中的 Performance Summary
Step Performance 选项卡中的 Performance Summary
Step Performance 选项卡中的 Performance Summary

Resources 选项卡

Resources 选项卡包括在移动试运行期间以固定时间间隔监测的各种资源的测量详细信息。测量以趋势图表的形式显示,包含在应用程序特定上下文以及整体设备上下文中被监测资源的信息。

在报告选项卡页面上会显示两种类型的趋势图表,综合的报告和一系列单个资源的图表。

综合的报告 默认情况下显示了应用程序上下文中的关键资源的信息,例如,移动设备应用程序所使用的CPU、物理内存和虚拟内存。综合图表的图示如图 9。

图 9. Resources 选项卡:综合图表
Resources 选项卡中的综合图表
Resources 选项卡中的综合图表

单个资源的图表系列 显示在应用程序级和在设备级的与特定资源有关的信息。图 10 显示了一系列单个资源的图表。

图 10. Resources 选项卡:Resources 选项卡中的独立图表
Resources 选项卡中的独立图表
Resources 选项卡中的独立图表

如图 11 所示,测试步骤边界与趋势图的顶部重叠。它们显显示该资源测量和在该时间点的测试步骤之间的相关性。这个图可以指示资源使用何时突然增加或减少,以及是哪个测试步骤引起这种突然变化。

图 11. 测试步骤边界
测试步骤边界
测试步骤边界

除了默认的图表之外,您还可以自定义趋势图,以显示感兴趣的资源计数器。您可以灵活地在图表中添加或删除任何应用程序级或设备级的计数器。图 12 显示了添加或删除性能计数器的选项。

图 12. 添加或删除性能计数器
添加/删除性能计数器
添加/删除性能计数器

图 13 显示添加或删除 Mobile and Web UI Performance Counters 的灵活性。

图 13. 添加或删除 Mobile and Web UI Performance Counters
添加/删除 Mobile and Web UI Performance Counters
添加/删除 Mobile and Web UI Performance Counters

图 14 显示了一个添加了 Battery 计数器的独立 CPU 图。

图 14. CPU,添加了一个额外的计数器
添加了 Battery 计数器的 CPU 图
添加了 Battery 计数器的 CPU 图

高级用法

虽然这篇文章的目的是要说明您可以如何使用 Rational Test Workbench 来测试移动客户端性能的基本流程,但值得一提的是,您还可以通过其他方式执行同样的性能测试。您可以通过调度跨多个设备使用命令行、IBM® Rational® Quality Manager、复合测试和测试运行(后者目前要求将 IBM® Rational® Performance Tester 安装在同一个 Eclipse 外壳中)。

结束语

按照本文中介绍的步骤,您可以执行 Andr​​oid 和 iOS 应用程序的自动化移动客户端性能测试,特别是测试用户操作的响应时间和监测资源。这些结果很有用,可以帮助开发人员和测试人员社区进一步优化移动应用程序的性能,并提高整体的最终用户体验。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=996544
ArticleTitle=您的移动应用程序很慢吗?非常耗费资源吗?
publish-date=01262015