将 Android 测试过程自动化

您可以将命令行界面与 Android 调试网桥 (adb) 实用程序以及命令行工具(例如 curl)一起使用,从而将 Android 应用的测试过程自动化。 然后,您可以将命令行语句整合到脚本和批处理文件中。

开始之前

关于此任务

自动化过程包括以下步骤:

过程

  1. 检测最新发行版的 AUT。

    您可以通过将应用程序从移动设备或仿真器上载到 测试工作台 或者通过单击 测试工作台 内的将应用程序添加到列表按钮来手动检测 Android 应用。要将此过程自动化,请使用工具,例如 curl

    1. 启动 Rational Test Workbench Eclipse Client
    2. 测试工作台中,单击显示工作台 URL 图标 工作台 URL,并记录工作台 URL。您需要来自工作台 URL 的 IP 地址和端口以执行下一个步骤。
    3. 运行以下命令行来检测 AUT:
      curl -F "appfile=@MyApp.apk"
      -F "appdescription=My App Description"
      http://Workbench-URL:port/moeb/service/com.ibm.rational.test.lt.core.moeb.services.buildchain.IBuildChainService/?action=upload

      例如:

      curl -F "appfile=@MyExpenses.apk"
      -F "appdescription=Expense report app"
      http://192.0.2.24:7878/moeb/service/com.ibm.rational.test.lt.core.moeb.services.buildchain.IBuildChainService/?action=upload

    此步骤生成三个新的 .apk 文件:

    • R-原始 apk 名称.apk - 回放就绪应用程序
    • T-原始 apk 名称.apk - 应用程序的测试引擎
    • I-原始 apk 名称.apk - 记录就绪应用程序

    有关 .apk 文件、检测和 Android 构建过程的详细信息,请参阅Android 测试概述

  2. 使用 adb 在 Android 设备或仿真器上安装最新发行版的 AUT。必须安装回放就绪的 .apk 文件和测试引擎 .apk 文件。adb 实用程序一般安装于 Android-SDK 安装位置\sdk\platform-tools
    1. 在 Eclipse 工作空间中的以下位置找到回放就绪的 .apk 文件和测试引擎 .apk 文件:
      your-workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds/AUT-uid/R-original-apk-name.apk

      其中 AUT-uid 是构建文件夹的最后修改子文件夹的文件夹名称。 一般,AUT-uid 是长十六进制数字。

      示例:

      C:\workspaces\rtw86\.metadata\.plugins\com.ibm.rational.test.lt.models.behavior.moeb\builds\b01714617a0a34788898e05c9696e0bf\R-expenses.apk

      您可以在同一位置找到测试引擎应用。只需将 R 前缀替换为 T

    2. 从命令行运行以下命令:
      adb install -r Workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds//AUT-uid/R-AUT-name.apk
      adb install -r Workspace/.metadata/.plugins/com.ibm.rational.test.lt.models.behavior.moeb/builds//AUT-uid/T-AUT-name.apk

      要在多个设备或仿真器上安装 AUT,请使用 -s(序列号)选项,例如:

      adb install -s emulator-5556 -r 
      C:\workspaces\rtw86\.metadata\.plugins\com.ibm.rational.test.lt.models.behavior.moeb\builds\b01714617a0a34788898e05c9696e0bf\R-expenses.apk
      adb install -s emulator-5558 -r 
      C:\workspaces\rtw86\.metadata\.plugins\com.ibm.rational.test.lt.models.behavior.moeb\builds\b01714617a0a34788898e05c9696e0bf\T-expenses.apk

      有关详细信息,请参阅 Directing Commands to a Specific Emulator/Device Instance

  3. 安装移动测试客户机并以被动方式将其启动。被动方式允许在 测试工作台 中以脚本或批处理文件来控制文本执行。

    运行以下 adb 命令来卸载现有版本的移动测试客户机,重新安装更新版本的客户机,然后将客户机设置为被动方式。

    adb uninstall com.ibm.rational.test.mobile.android.client.ui
    adb install "Eclipse client path/com.ibm.rational.test.mobile.android.client.ui-release.apk"
    adb shell am start
    -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "Workbench-Url" --ez passive_mode “true”

    例如:

    adb uninstall com.ibm.rational.test.mobile.android.client.ui
    adb install "C:\Program Files\IBM\IBMIMShared\com.ibm.rational.test.mobile.android.client.ui-release.apk"
    adb shell am start
    -n com.ibm.rational.test.mobile.android.client.ui/.MainActivity -e workbench_url "9.44.55.666:7878" --ez passive_mode “true”
  4. 以命令行方式运行测试。

    现在,您可以运行测试。有关以命令行方式运行测试或调度的详细信息,请参阅从命令行运行测试或调度

    注: 您不能在 Mac OS X 上从命令行运行测试。

    缺省情况下,测试工作台 选择最适合测试执行需求(Android OS 和 Android API)的第一个已连接设备。要在一个或多个特定设备上运行测试,请使用 adb -s 设备标识选项。 要查找设备标识,请在 测试工作台 中打开“移动设备”编辑器,选择设备,然后在“详细属性”中查找此标识。

    您还可以使用变量来选择特定设备。有关详细信息,请参阅定义变量以通过所选移动设备运行测试

    所有测试脚本都链接到特定版本的 AUT。如果您上载新版本的 AUT,那么您应该始终在最新版本的 AUT 上运行测试。有关详细信息,请参阅在测试中定义一个变量以运行最新版本的应用程序


反馈