# プリインストールアプリのテスト

システムアプリやサードパーティアプリなどのすでにインストールされているアプリケーションをテストしたい場合は、このチュートリアルを参照ください。

# Android端末

プリインストールAndroidアプリケーションをテストするには、アプリケーションの appPackage および appActivity を見つけ、 gondola.json に追加する必要があります。

# appPackageおよびappActivityを見つける

Javaのパッケージ名およびMainActivity名が必要です。多くのAndrod端末に存在するため、この例では、Settings アプリケーションを対象とします。

  1. AVD(アンドロイドバーチャルデバイス)を開くか、Android端末をコンピューターに接続します
  2. ターミナルでadb devicesと入力し、エンターを押下します
  3. 端末が確認できるはずです。確認できない場合は、端末が適切に起動しているか確認してください。
  4. abd shellと入力し、エンターを押下します。以下のようなシェルプロンプトが確認できるはずです。
generic_x86:/ $
  1. 端末もしくはAVDで設定アプリケーションを起動します
  2. ステップ4で起動したシェルを使って、dumpsys window windows | grep mFocusedAppを入力し、エンターを押下します。
    出力は以下のようになるはずですが、Androidバージョンに依存します。
  mFocusedApp=AppWindowToken{73a3116 token=Token{e623631 ActivityRecord{85f02d8 u0 com.android.settings/.Settings t114}}}

appPackageの値はcom.android.settingsで、appActivityの値はcom.android.settings.Settingsです。

# Gondola.json

この情報を、gondola.jsonで以下のように使用します:

"Appium": {
    "require": "./node_modules/@logigear/gondola/built/helper/AppiumEx",
    "smartWait": 5000,
    "platform": "android", //これを追加し、"app"設定を削除します
    "desiredCapabilities": {
      "appActivity": "com.android.calculator2.Calculator",  // アプリケーションのアクティビティ
      "appPackage": "com.android.calculator2", // アプリケーションのJavaパッケージ
      "deviceName": "emulator-5554",
      "automationName": "UiAutomator2",
      "newCommandTimeout": 600
    }
}

さあ、いつものようにテストが実行できます。

# iOS端末

プリインストールのiOSアプリケーションをテストするためには、bundleIdが必要になります。
こちらのステップに従い、bundleIdを見つけてください。

# Gondola.json

gondola.jsonに以下の設定を利用可能です。

"Appium": {
    "require": "./node_modules/@logigear/gondola/built/helper/AppiumEx",
    "smartWait": 5000,
    "app": "com.apple.Maps", // AUTのbundleIdに設定します
    "desiredCapabilities": {
        "automationName": "XCUITest",
        "platformName": "iOS",
        "platformVersion": "13.1",
        "deviceName": "iPhone  11 Pro Max"
    }
}

実端末を利用する場合は追加の設定 が必要になるかもしれません。

さあ、いつものようにテストが実行できます。

最終更新: 2021/2/2 6:54:30