内容


DeviceAnywhere:通过软件即服务(SaaS)模型加速移动应用程序的开发

Comments

deviceanywhere 标志对于移动产品开发人员来说,障碍经常出现:不断增加的消费者需求和期待,开发时必须面向的上千的手机品种,以及对来自世界不同地区的设备的受限的访问。

多年来,移动行业专家 Faraz Syed 和 David Marsyla 认识到这些与移动应用程序的手工测试相关的问题。他们了解,利用物理手机或使用仿真器和模拟器对于实时的手机测试来说是不适合的或不节省成本的。他们寻求创建一种产品,该产品能让开发人员在不用讨论及购买物理设备的情况下对实际的手机进行实时测试。此外,不断变化的移动行业的兴起,以及消费者对更丰富、更高级的手机程序的需求,使得人们需要一种中间件,通过它开发人员可以很容易地访问并有效地测试全世界的设备。

Syed 和 Marsyla 认为,只要存在一种立即访问全球任一所需的设备的方法就好了。他们的工作致使 DeviceAnywhere™ 的创建,这是一家提供为嵌入式软件开发人员解决这些问题的解决方案的公司。DeviceAnywhere 通过 软件即服务(Software-as-a-Service(SaaS))模型,提供允许开发人员以低维护、易用、低成本的形式访问全球 1,500 个实际的手机的平台。本文介绍了 DeviceAnywhere 的概念,以及 IBM® Rational® ClearQuest® 用户如何利用技术来控制文本的执行及结果的跟踪。

SaaS 商业模型

SaaS 形式对客户来说是非常有益的模型,因为它能让 DeviceAnywhere 在向用户提供灵活的支付计划,以及可能产生的问题的技术支持的同时迎合大量用户的立即需求。用户只需要支付在 DeviceAnywhere 上使用的时长 —— 按时计费形式 —— 而不是用户不能获得金钱的价值的固定的花费。设备分为多个包含来自世界各地不同运营商和手机的包,客户选择他们想要的包并按月支付使用时长。

此外,客户可以联系到二十四小时的客户维护代表,他们可以帮助解决用户在使用服务时遇到的小故障或具体问题。因为 DeviceAnywhere 在内部控制并管理程序,所以技术支持代表能够在支持过程中看到客户的屏幕,从而更准确地查明问题并提供解决方案。

跟上不断变化的全球市场

随着市场的变化,工具必须用于创建高质量的移动产品。最近,消费者已经要求高级的下一代应用程序了,例如,全球定位系统(global positioning systems,GPS)和 Web 连通性。

这样的需求的满足是要考虑其关注及其错综复杂的。Harris Interactive 在 2007 年的研究显示,在有了糟糕的移动产品体验后,80% 的消费者将不会回到特定的运营商、制造商,或应用程序。随着移动产品及应用程序复杂性的不断增长,可能产生的问题实在太多了。因此,强制开发人员要彻底测试并确保质量,从而优化最终用户的体验。

通过 DeviceAnywhere,开发人员和测试人员可以远程访问实时手机,从而与全世界的同事协作,运行监控特性以在最终用户之前捕获故障,并且创建自动的测试脚本来节省时间和人力。这些解决方案能够让开发人员比通过手工测试更快速地向市场交付丰富高质量的产品。

工作方式

图 1 例举了 Direct-to-Device 技术,它简化了在互联网上用户和实时设备之间的交互访问。通过利用 Direct-to-Device 技术,用户能够控制所有输入并看到所有输出。该技术采用电子集成系统的形式,包括连接到每个移动手机的输入/输出接口上的线,例如按钮、屏幕、LCD、扬声器、振铃器、背景灯、麦克风、电池等等。

数据中心的图

数据中心的图

图 1:DeviceAnywhere 的数据中心之一,在其中,实际的设备连接到服务器上,令用户能够通过计算机界面远程访问 1,500 以上的移动设备。

输入信号,例如按钮点击,来源于用户的桌面计算机在互联网上对手机的操作,输出信号,例如 LCD 和音频,流回以提供实时的交互手机访问。因而,您可以像拿在手里一样与设备充分交互,并且远程按下按钮,轻拍触摸屏,查看背景灯,并聆听设备声音,所有这些都是通过一个简单的桌面界面进行的。此外,可以映射并保存所有交互,让用户能够追踪开发和测试进度,并且确定问题出在哪。

用户还可以利用自己的数据中心或全球另一个位置的数据中心中的专用设备(为了职员专用)。

图 2 显示了允许可视的且基于 API 的脚本执行的自动化层。通过利用自动化特性,用户可以运行自动的测试脚本和电话交互。

屏幕截图

屏幕截图

图 2:自动化层允许可视的及基于 API 的脚本执行。

自动化层允许授权开发人员可以在最终用户之前捕获应用程序中固有的问题的完整的监控框架。此外,测试自动化脚本减少了开发人员在手机上进行应用程序测试时必须投入的时间和人力。脚本可以整夜或在其他计划时间在任一设备上运行,允许开发人员将时间投入到更大的问题及其他开发任务上。

同时,为推动 DeviceAnywhere 而创建的技术让开发人员可以远程访问来自全世界的 1,500 个实际设备 —— 所有都可以通过互联网上简单的桌面界面访问。一个独立于设备、运营商,和操作系统的解决方案,DeviceAnywhere 支持跨领域的手机,让开发人员可以远程访问包含他们可能需要的任何设备的丰富的电话银行。利用用于测试需求的 DeviceAnywhere 的技术可以减少对手工测试的需求,以及与其相关联的成本和低效率。协作特性可以让美国的团队能够与日本的团队在同一项目中,在同一设备上合作。

与 Rational 集成

在 2008 年初,DeviceAnywhere 与 IBM Rational ClearQuest 完全地整合了。该集成令 IBM 用户社区可以在全球超过 1,200 个实际的手机上进行移动应用程序的测试,同时利用 ClearQuest 来控制测试的执行,以及追踪结果。用户可以利用 DeviceAnywhere 的测试自动化层来创建并自动化手机上的脚本,然后利用 ClearQuest 来控制测试的执行,追踪结果,并管理变更请求,如图 3 所示。

屏幕截图

屏幕截图

图 3:用户可以利用 DeviceAnywhere 的测试自动化层来创建并自动化手机上的脚本,然后利用 ClearQuest 来控制测试的执行,追踪结果,并管理变更请求。

用户可以通过 DeviceAnywhere Pro 界面查看并编辑脚本,DeviceAnywhere Pro 可以通过 ClearQuest 或 DeviceAnywhere 启动。一旦脚本准备好,用户就可以运行与 ClearQuest 相关的配置好的测试用例来执行脚本。通过 ClearQuest,用户可以查看脚本的状态,以及显示每个脚本步骤和结果的测试日志。如果测试失败,用户就可以查看详细的日志来找出测试在哪里出现问题,这样用户可以很容易地准确地确定需要在哪里进行变更。此外,ClearQuest 记录所有的问题和缺陷的日志,确保无缝且容易参考的测试过程。

如何使用 DeviceAnywhere/ClearQuest 集成

一个简单的部署插件允许对所需的信息进行配置,从而联合 ClearQuest 和 DeviceAnywhere 应用程序。这些信息包括:

  • 存储了关于可用 DeviceAnywhere 服务器的信息的文件位置
  • 要输入到 ClearQuest 中的 DeviceAnywhere 用户名和密码信息
  • 存储 DeviceAnywhere 程序文件的目录

这些信息让用户可以从 ClearQuest 界面启动 DeviceAnywhere,并且将由 ClearQuest 配置的测试用例与 DeviceAnywhere 脚本关联起来。通过图 4 所示的对话框,用户可以选择 DeviceAnywhere 脚本来与由 ClearQuest 配置的测试用例相关联。

屏幕截图

屏幕截图

图 4:通过图 4 所示的对话框,用户可以选择 DeviceAnywhere 脚本来与由 ClearQuest 配置的测试用例相关联。

查看并编辑 DeviceAnywhere 脚本

用户通过 DeviceAnywhere Pro 界面(通称为 DeviceConductor)查看并编辑 DeviceAnywhere 脚本(参见文章结束部分的 DeviceAnywhere 产品介绍)。通过右键单击与 DeviceAnywhere 脚本相关的已配置的测试用例,并选择菜单中的“open script”,可以在 ClearQuest 中很容易地启动此界面。

如果 DeviceAnywhere 在用户的计算机上已经打开了,那么在 DeviceConductor 客户端界面上会打开并可以查看脚本。如果用户没有启动 DeviceAnywhere,那么它将自动启动,并且 DeviceAnywhere 客户端软件包将自动记入该用户。然后 DeviceConductor 将出现,并且所选的脚本打开了。在此,用户能够获取设备并编辑脚本,如图 5 所示。

屏幕截图

屏幕截图

图 5:DeviceConductor 允许用户获取设备并编辑脚本,如此窗口左上角的嵌套文件夹所示。

通过 ClearQuest 执行测试

一旦脚本准备好了,用户就可以通过在 ClearQuest 中运行与其相关联的已配置的测试用例来执行它,如图 6 所示。

屏幕截图

屏幕截图

图 6:运行与脚本相关联的已配置的测试用例

ClearQuest 提供脚本运行状态的高层视图。

查看测试结果

一旦执行了测试用例,就可以看到高层的和详细的结果了。

通过 ClearQuest,用户可以查看 Test Log,如图 7 所示。对于失败的测试,用户可以更详细地查看测试步骤,包括所有输入和结果的设备输出。

屏幕截图

屏幕截图

图 7:查看测试日志

要查看详细的输出,用户可以在上面显示的窗口中选择 View Detailed Log,然后选择 View Detailed Results。DeviceAnywhere Pro 存储的测试结果将出现在 ClearQuest Results 窗格中,如图 8 所示。

屏幕截图

屏幕截图

图 8:DeviceAnywhere Pro 存储的测试结果将出现在 ClearQuest Results 窗格中。

创建缺陷

用户可以应用 ClearQuest 为任意执行的测试用例记录日志问题。通过 DeviceAnywhere Pro,可以将缺陷链接到保存的测试结果上,以便用户可以查看来自测试的精确结果,并且查看已产生的错误,如图 9 所示。

屏幕截图

屏幕截图

图 9:查看精确的测试结果和已产生的错误

关于 DeviceAnywhere

DeviceAnywhere 成立于 2003 年,公司位于加利福尼亚州的 San Mateo,以及英国、德国、法国、日本、加拿大,和巴基斯坦。自从 2006 年 1 月 DeviceAnywhere 投入使用以来,开发人员可以远程访问手机和确保高质量移动产品的创建和分布的端到端的移动开发解决方案。目前,DeviceAnywhere 支持超过 1,000 个挂接在实时服务器上的实际设备,以及全球超过二十五家的运营商 —— 这些设备和运营商在连续的基础上进行添加。此外,DeviceAnywhere 的节省成本的 SaaS 模型减少与手工测试相关联的成本,并且使得开发人员比从前更快速地将产品投放市场。

在 2008 年,DeviceAnywhere 计划继续扩展到亚洲和西欧。

DeviceAnywhere 产品

DeviceAnywhere 为移动开发生命周期提供完整的解决方案。除了标准的 DeviceAnywhere 服务以外,DeviceAnywhere 系列中还有很多更高级的产品。

DeviceAnywhere Pro

DeviceAnywhere Pro 是一个智能且全面的平台,允许您创建并在实时的全球网络上的 1,200 多个实际设备上运行自动的测试。不像使用仿真器或模拟器的其他产品那样,DeviceAnywhere Pro 将自动化软件的便利与实际设备的精确性相结合以生成可靠的、可重复的,且可报告的结果。通过 DeviceAnywhere Pro,用户可以将应用程序自动化,记录结果,创建简单的和复杂的测试脚本,在多个设备上测试相同的脚本,并且计划在方便的时候执行测试。

DeviceAnywhere Monitoring

DeviceAnywhere Monitoring 能够让产品提供商在连接到实时网络上的实际的移动手机上监控它们的应用程序 —— 正好便于在它们自己的桌面上进行。利用 Mobile Complete 的已验证的 Direct-To-Device™ 技术,用户能够确定至关重要的数据 —— 例如,从不同的运营商网络上下载产品的时间是多长,以及产品是否以正确的样子出现在各种手机模型上。DeviceAnywhere Monitoring 使得用户可以在最终用户之前找到故障,收集并分析结果,了解性能趋势,并且利用针对视频的规格监控视频。

DeviceAnywhere Consumer

使用名为 Virtual-Device™ 的技术,DeviceAnywhere Consumer 利用对实际设备的检索而创建的虚拟模型映射出电话的虚拟复制品。一种尖端的 Web 着色器利用最新的 Web 2.0 技术,通过 HTML 交付此大规模的电话映射。结果是可以完全交互的虚拟电话 —— 互联网上可用的。利用 DeviceAnywhere Consumer,商家可以向它们的客户提供在互联网上尝试完全交互的虚拟手机、应用程序和服务的能力。消费者可以浏览并与不同的移动设备交互,体验那些手机上的产品和应用程序,并且使自己习惯于那些电话,从而确定他们最喜欢哪些,并且更好地了解如何使用针对特殊手机模型的特性和功能。DeviceAnywhere Consumer 也可以部署到客户维护环境中以帮助运营商、生产商,和开发人员更好地培训并支持客户 —— 提高客户满意度并增加产品的采用。此外,它可以成为培训职员了解各种手机的有用工具。

要了解更多关于 DeviceAnywhere 的信息,请访问 www.deviceanywhere.com。

致谢:

John Brody 想要感谢 IBM Rational 的 Pat McCarthy,感谢他关于 Rational 和 Eclipse 的孜孜不倦的帮助和明智的建议。


相关主题


评论

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=314394
ArticleTitle=DeviceAnywhere:通过软件即服务(SaaS)模型加速移动应用程序的开发
publish-date=06162008