内容


IBM Rational Test Workbench 在 iOS App 开发中的应用

基于移动应用项目自动化实例介绍 RTW 的应用

Comments

整体安装流程以及软硬件最低配置要求

图 1. 安装顺序流程图
安装顺序流程图
安装顺序流程图

在安装移动测试客户端前,您需要首先验证设备满足以下的软件要求。

Rational Test Workbench 操作系统要求:

  • Microsoft Windows 7, Vista, 或者 Windows 8
  • Red Hat Linux 5/6 或者 SuSE Linux 11

设备操作系统要求:

  • Android 2.2 – 4.2
  • iOS 6 及以上

其他要求:

  • Android
  • Android SDK 21 需要安装
  • iOS
  • Mac OS V v10.8 Mountain Lion 及以上版本
  • Xcode 4.6
  • iOS 模拟器 6
  • Apple 开发者或者企业许可证

在 PC 上安装 RTW

使用 RTW 测试 iOS 应用有两种方式,一种是使用 iOS 模拟器,本文将在后文中详细阐述;另一种是使用 iOS 真实设备(iPhone/iPad),由于官网还未发布正规的 iOS RTW 客户端安装包,这部分介绍将在后续文章中涉及。

测试环境

  1. RTW 安装在一台 Windows 7 的机器上,IP 地址 9.110.26.91
  2. Xcode 安装在一台 Mac 机器上,IP 地址 9.186.117.200
  3. 2 台机器能够互相 ping 通

在 iOS 模拟器上安装移动测试客户端

在本章中,将通过具体实例向用户分别介绍如何在 Mac OS 和 windows OS 下 iOS 模拟器中安装移动测试客户端。

模拟器中 RTW 客户端的安装

只有首先在 iOS 模拟器中安装 RTW 客户端,RTW 服务器才能记录 iOS 中 App 运行的步骤信息,并对其进行编译。

在 IBM Rational Test Workbench Eclipse 点击文件(File)>新建(New)>增加设备并拷贝(Add Device and copy the Workbench URL),如图所示

图 2. 添加设备
添加设备
添加设备

点击下一步,得到 Workbench 的 URL 信息,如图所示

图 3. Workbench URL 信息
Workbench URL 信息
Workbench URL 信息

接着打开 Mac 机器上的浏览器,输入前面步骤中得到的 Workbench URL,并点击下载(Click here to start archive download),得到压缩包 RTW-iOS-Build-Archive.zip,该压缩包为 RTW 客户端安装文件,如图所示

图 4. 下载 RTW 客户端安装文件
下载 RTW 客户端安装文件
下载 RTW 客户端安装文件

在使用 shell 脚本之前,解压上一步的压缩包 RTW-iOS-Build-Archive.zip

图 5. 解压缩后的 RTW 客户端安装文件
解压缩后的 RTW 客户端安装文件
解压缩后的 RTW 客户端安装文件

确保当前用户可有权限在 build-script 文件夹下执行所有的 shell 脚本,同 Linux 环境下的命令,可以使用 ls –l 查看文件和文件夹属性,并使用命令 chmod 批量增加其读、写、可执行的属性。

新建命令行窗口,将当前路径指向 build-script 文件夹下,并输入

./installIPAInSimu.sh/Users/XXX/Downloads/RTW-iOS-Build-Archive/client/iphonesimulator/RTWiOS.ipa

特别地,.ipa 文件作为参数是这个 shell 命令必须的,它正位于这个路径../client/iphonesimulator/下;XXX 代表 admin 用户的用户名,如果不确定,可以首先 cd 到这个目录下寻找指定 ipa 的真实路径。

图 6.将 RTW 客户端安装至模拟器
将 RTW 客户端安装至模拟器
将 RTW 客户端安装至模拟器

执行完成后,iPhone 模拟器会启动,RTWiOS 也会相应地自动装在模拟器里了,如图所示

图 7. RTW 客户端安装成功
RTW 客户端安装成功

使用鼠标点击模拟器上的 RTWiOS 图标,做相关配置。首先点击平台配置(Configure workbench)

图 8. RTW 客户端配置界面
RTW 客户端配置界面

将服务器 URL 设置为前面步骤中在 RTW 得到的 URL:http://9.110.26.91:7878,删去/mobile 的后缀。

图 9. 修改 RTW 客户端服务器地址
修改 RTW 客户端服务器地址

接着去检查 RTW 服务器端移动设备的状态,若前一步 URL 配置成功,RTW 中模拟器的状态将从 Not connected 变为 Connected,标志着 RTW 服务器与 iOS 模拟器成功连接。

图 10. iOS 模拟器与 RTW 服务器连接状态的变化
iOS 模拟器与 RTW 服务器连接状态的变化
iOS 模拟器与 RTW 服务器连接状态的变化

至此为止,RTW 服务器和 iOS 模拟器连接已经配置完成,环境搭建成功。第四章将讲述如何通过 RTW 对被测应用做录制,回放的自动化测试。

录制并回放一个简单应用

本章将向读者讲述如何在 iOS 模拟器中安装被测软件,加入到 RTW 用于管理的 manage applications 后,如何对简单计算器做测试的录制回放修改的操作。

源码程序 App 的安装

首先需要准备被测试应用 App 的源代码文件,源代码的文件名不能有中文、空格、特殊字符等。打开源码文件,用鼠标双击其中的.xcodeproj 文件,MAC 中的 Xcode 会自动加载项目。

图 11. 在 Xcode 中打开示例工程
在 Xcode 中打开示例工程
在 Xcode 中打开示例工程

在 Xcode 的左上角下拉框处选择模拟器的类型,在这里我们以 iPhone6.1 Simulator 为例。点击黑色三角箭头‘运行(Run)’,Xcode 会自动将应用安装到模拟器中。安装成功后,模拟器将自动启动并开启被测的应用 App。此时只是将 App 成功安装到模拟器,RTW 还不能对其进行管理,所以还需要操作——将 App 添加到 RTW 的管理应用列表中。

图 12. App 在模拟器中成功安装
App 在模拟器中成功安装
App 在模拟器中成功安装

添加 App 的过程仍然要用到 shell 脚本,所以这一步我们使用 build-script 文件夹下面的 rtwBuildXcode.sh 文件。打开 Mac 系统的命令行终端,定位至 build-script 的文件夹,运行的 shell 需要带参数,

./rtwBuildXcode.sh <.xcodeproj file> <rtw server URL> simu.xcodeproj

文件需要绝对路径,如果路径中有空格,需要用双引号括住所有的路径或者用反斜杠代替空格。RTW 服务器 URL 必须带端口号,例如 http://<IP>:7878

本文举例运行命令如下,

./rtwBuildXcode.sh /Users/administrator/Desktop/mount/mount.xcodeproj http://9.110.26.91:7878 simu

注意,在运行脚本之前,需要确保 RTW 服务器和 iOS 模拟器处于连接状态,上面的命令会同时将 App 上传到 RTW 服务器和模拟器中。命令执行完成后,模拟器会被自动重启,命令行终端会显示重启的状态,如图所示

图 13. 自动重启模拟器
自动重启模拟器
自动重启模拟器

重启完成后再次打开模拟器中的 RTW 客户端,这时在应用管理列表(manage application)中能看到刚才上传的 mount 应用。同时,RTW 服务器端中可以看到刚才提交的应用:

图 14. RTW 服务器端应用列表中出现新应用
RTW 服务器端应用列表中出现新应用
RTW 服务器端应用列表中出现新应用

新上传的 App 需要在 RTW 服务器中建立项目以存放测试 test 和结果等。右键点击被测 App,选择生成管理应用(Generate Managed Application)

图 15. 被管理应用和项目目录的生成
被管理应用和项目目录的生成
被管理应用和项目目录的生成

点击’Test Workbench Project’ 以创建一个新项目,如图所示,并输入项目名称,点击完成按钮。

图 16. 创建 Test Workbench 项目
创建 Test Workbench 项目
创建 Test Workbench 项目

RTW 会为这个应用创建一个完整的项目目录结构,如图所示

图 17. 项目目录结构
项目目录结构

至此为止,App 在 iOS 模拟器和 RTW 服务器端的安装就完成了。接下来将录制测试用例,编辑测试用例以及运行测试用例后修改维护。

简单计算器的安装测试

录制测试的应用将以 Calculator 程序为例,进行一个简单的测试。

安装计算器应用程序到 RTW 和 iOS 模拟器的步骤上文所述。

图 18. 将 Calculator 应用关联至 RTW 服务器和客户端
将 Calculator 应用关联至 RTW 服务器和客户端
将 Calculator 应用关联至 RTW 服务器和客户端

在 iOS 模拟器中打开 RTWiOS, 点击应用管理(Manage Applications), 选择您要测试的计算器应用

图 19. 打开应用管理中的计算器应用
打开应用管理中的计算器应用

点击录制(Record)开始录制测试脚本。首先清屏,然后进行一系列运算,9*9, 100*100,和 3/0 的除法。完成整个过程之后,点击 Home 键回到桌面关闭应用程序。

图 20. 操作计算器应用
操作计算器应用

完成后,切换到 RTW server 端,用户可以观察到有新的录制生成。

图 21. 在 RTW 服务器中查看操作记录
在 RTW 服务器中查看操作记录

点击 Click here 保存测试,并命名为 DemoTest1。保存之后,我们会看到刚才所做的操作动作被全数记录下来,如图所示

图 22. 在 RTW 服务器中查看操作步骤
在 RTW 服务器中查看操作步骤
在 RTW 服务器中查看操作步骤

同时地,在 iOS 模拟器端打开 RTWiOS, 选择到被测应用后,用户会发现多了一项 Test 在被测应用中,这就是刚保存的测试脚本。

图 23. 在 RTW 客户端中查看脚本
在 RTW 客户端中查看脚本

如果用户需要回放,则点击 DemoTest1,同样可以看到所有的录制步骤,同时有一个 Run Test 的按钮在顶部

图 24. 在 RTW 客户端中查看录制结果
在 RTW 客户端中查看录制结果
在 RTW 客户端中查看录制结果

点击 Run Test 按钮,会再次运行之前录制的脚本。完成后用户可以在 Reports 中找到运行结果。点击运行结果,会有运行的细节信息,以及每个步骤的截图。

图 25. 在 RTW 客户端中查看录制细节
在 RTW 客户端中查看录制细节
在 RTW 客户端中查看录制细节

同时在 RTW server 端,您可以发现有一条新的测试结果,点开之后同样是 report 中的细节信息和截图。

图 26. 在 RTW 服务器中查看测试结果
在 RTW 服务器中查看测试结果
在 RTW 服务器中查看测试结果

计算器应用的测试用例修改

录制完成后,用户需要修改测试脚本以做后期维护,我们可以通过 RTW 服务器端对录制的脚本进行修改。这里是一个简单的例子,我们在每次点击了“=”之后,加入验证结果正确的验证点。鼠标右键‘点击按钮=’步骤后,选择插入一个验证点,如图所示,

图 27.添加验证点
添加验证点
添加验证点

验证点的作用是,检测每次点击“=”之后,标注屏幕中显示的 text 文本,是否是正确的数值。

图 28.配置验证点的细节
配置验证点的细节
配置验证点的细节

相应地,在 iOS 模拟器端,相对应的测试用例中添加验证点的步骤及内容已经被相应修改了。

最后点击 Run Test 来执行修改好的测试用例,运行完成之后再次查看报告,对应的步骤已经添加并且运行。

图 29.RTW 客户端测试用例报告的细节步骤
RTW 客户端测试用例报告的细节步骤
RTW 客户端测试用例报告的细节步骤

同时在 RTW server 中,结果也添加了验证点步骤的记录。如上所述即完成了测试应用的脚本录制修改,测试报告可以供测试人员分析结果。

卸载被测应用

对于模拟器中的应用,可以在 RTW 控制台上选中需要删除的应用——右键——删除应用即可,如图所示,如果需要卸载模拟器中的 iOSRTW 客户端,只需要长按该应用,当 App 图标右上角出现叉后点击叉型,即在模拟器中删除了客户端。

图 30.卸载 RTW 服务器中的应用
卸载 RTW 服务器中的应用
卸载 RTW 服务器中的应用

常见错误故障排除

目前 RTW 与 mobile 应用测试结合仍然处于不断的改进阶段,市面上的一些应用采用的 Dojo Mobile 的框架开发,或者其他类型的开发模式,RTW8.5 版本仍然并不能完全支持,会出现无法找到控件的问题。后续版本的 RTW 仍然会通过不断更新以结合多种应用的测试。

  1. RTW 控制台与模拟器连接不上怎么办

    控制台中的移动设备始终显示“未连接”,这时需要在 IBM Rational Test Workbench Eclipse 客户端点击文件(File)>新建(New)>增加设备并拷贝(Add Device and copy the Workbench URL),点击下一步,得到 Workbench 的 URL 信息,将模拟器中的 IP 配置成刚获取的 URL 即可。注意,这个 IP 是在每次开启 RTW 后自动分配的,所以每次尝试新连接时都需要修改。

    图 31.客户端和服务器连接问题
    客户端和服务器连接问题
    客户端和服务器连接问题
  2. 我安装的应用为什么不能识别控件

    请确认您应用的开发框架,RTW8.5 是不识别 Dojo mobile 等的。

  3. 为什么我安装的 IOS 应用不能录制回放

    请确认您导入了应用的源码(source code),在有源码的条件下 RTW 才能执行录制回放修改的操作。

结束语

本文主要介绍了如何使用 Rational Test Workbench 8.5 安装测试移动测试应用。通过阅读这篇文章,用户可以清楚的了解 RTW 控制台和模拟器上客户端的安装,基本脚本的录制,修改和回放,测试用例的生成,以及常见错误和故障的排除。在 RTW 8.5 移动应用测试基本功能的帮助下,用户可以简单运用 Rational Test Workbench 8.5 完成 iOS 应用的基本功能的测试和自动化测试脚本的录制回放,从而缩短整个移动测试的周期。


相关主题


评论

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

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=957564
ArticleTitle=IBM Rational Test Workbench 在 iOS App 开发中的应用
publish-date=12192013