iOS Gateway インターフェース
iOS Gatewayのインターフェースは、3つのメインパネルで構成されています。 左側のパネルでは、テスト可能なデバイスやシミュレーターが一覧表示されます。 中央パネルは、4 つのタブで構成されています:「General」、「Screen」、「Console」、「Diagnostics」。 右側のパネルには、左側のパネルで選択したiOSデバイスやシミュレーターに読み込まれるアプリの一覧が表示されます。
Devices/Simulators パネル
iOS Gateway UI左側のパネル上部にあるDevicesまたはSimulatorsをクリックして選択します。 デバイスやシミュレーターの名称、デバイスタイプ、iOSのバージョン、ポート番号が一覧表示されます。 デバイスまたはシミュレータ名の左側のドットの色は、そのデバイスまたはシミュレータの状態を示します。
中央パネル
このパネルには4つの表示タブがあります:General、Screen、Console、Diagnostic
Generalタブ
ウィンドウのGeneralセクションの内容は、デバイスパネルから選択したiOSデバイスに基づくものです。
Start: クリックするとVNCサーバーに接続し、オートメーションを開始します。
Stop: クリックするとVNCサーバーが切断され、オートメーションが停止します。
Connection Status:デバイスパネルのリストで選択されているiOSデバイスの接続状況です。
PID: 選択されたデバイスを自動化しているプロセスのID番号です。 PIDを参照して、コマンドラインまたはMacのアクティビティモニタアプリからプロセスを強制終了させることができます。
プロセス識別子は、デバイスパネルでデバイスのステータスにカーソルを合わせると、下図のようにツールチップで表示されます:
Battery: 接続されているiOSデバイスのバッテリー充電レベルです。
オプション
Auto-assign VNC Port: デフォルトで選択されています。 iOS Gatewayは、デバイスまたはシミュレータにVNC接続用のポートを割り当てます。
Port: Auto-assign Portが無効の場合、iOS Gateway接続用のポートを指定することができます。
Password: オプションです。 iOS GatewayのVNCサーバーにVNCパスワードを設定します。
Show Password: パスワードをドットの代わりに通常の文字で表示します。
Auto Assign WDA Port: デフォルトで選択されています。 WebDriver接続用のポートを自動で割り当てます。 このチェックボックスをオフにすると、チェックボックスの下のテキストフィールドに使用するポートを入力します。 デフォルトのWDAポートは8100です。 WebDriverによる自動化は、iOSデバイスが接続されると同時に開始されます。
iOS Gateway 5.3以降では、オートメーション実行時にport、VNC、WebDriverのオプションが無効になります。 これらの設定を変更する場合は、オートメーションを停止し、必要な変更を行った後、オートメーションを再開してください。
シミュレーター上のWebDriver接続では、手動によるポート選択はできません。
Auto Start on Connect: デフォルトでは選択されていません。 iOSデバイスが接続されると同時にオートメーションが開始されます。
Simulate Location: デフォルトでは選択されていません。 iOSデバイスのGPSをオーバーライドできるようにします。 System Preferencesの変更が必要です。
Publish on Bonjour: デフォルトで選択されています。 Bonjour接続を有効にします。
Allow Multiple Connections, Client Preference, Allow Only One Connection: ドロップダウンメニューを使用して、同じポートで複数の接続が許可されるかどうかを決定します。
- Allow Multiple Connections: 複数のクライアントからの接続を許可します。
- Client Preference: Eggplant Functional Connection Preferences タブの設定を使用します。
- Allow Only One Connection: この設定は、Keep Current VNC Client チェックボックスが選択されているか否かに依存します。
- Selected: 最初のクライアントが接続を維持します。
- Cleared: 第2のクライアントが接続し、第1のクライアントの接続を終了します。
Show All Apps: デフォルトで選択されています。 この設定を有効にすると、iOS Gatewayのサイドバーには、デバイスにインストールされているすべてのアプリが表示されます。 この設定を有効にしないと、サイドバーには自分の開発で署名したアプリとインストールしたアプリだけが表示されます。
Faster Screen Updates (Recommended for iPads): 選択すると、ビューワーウィンドウに表示されるオートメーションがよりスムーズに表示されます。 Eggplant Functionalのスクリプトは、より早い画像検索の実行が期待できます。 なお、このチェックボックスを選択した後、新たにスクリーンショットを撮影する必要がある場合があります。 この機能は、iOS 11以降で動作します。
スクリプトを作成する前に、Faster Screen Updatesを選択してください。 スクリプトを作成した後にこのオプションを選択すると、画像の再キャプチャが必要になる場合があります。 このオプションは、スクリプト内の画像のスケーリングを変更するため、テストが失敗する可能性があります。
iOSデバイスでWebDriverテストを行う際に、画面上の要素を正確にクリックするためには、Faster Screen Updatesを有効にする必要があります。
Max Frames Per Second:iOSデバイスからスクリーンショットをキャプチャする速度を決定するものです。 初期値は0.0であり、無制限のレートとなります。 CPU使用量とマシンへの負荷を減らすために、そのMacで自動化するiOSデバイスごとに、フレーム/秒を1~3の範囲に設定します。
フレームレートが低下すると、画像の位置や自動化性能が低下する可能性があります。 これは、1秒間にキャプチャできるフレーム数が少ない場合、画面の更新がアニメーションの途中で止まってしまう可能性があるためです。
Provisioning Profile
このセクションは、物理デバイスを自動化している場合にのみ表示されます。
- Profile: 現在使用されているプロビジョニングプロファイルです。 目玉アイコンをクリックすると、プロファイルに関連付けられたデバイスと証明書が表示されます。 黄色で表示されている証明書は、30日以内に有効期限が切れます。 無効または期限切れのプロファイルは、赤色で表示されます。 この環境設定は、デバイスごとに設定されます。
Apple Development証明書とiOS Development証明書の両方がコンピュータにあり、Xcode 11以降を使用している場合、デバイスを自動化できるようにするには、iOS GatewayでApple Development証明書を含むプロファイルを必ず
選択する必要があります。
- Team ID: 選択したプロビジョニングプロファイルに関連するApple Developer Teamと名前を一覧表示します。
- Cert Identity: 現在使用されている署名用証明書です。
Device Information
選択した機器に関する具体的な情報を表示します:
Name: iOSデバイスの名前です。
Model: iOSデバイスのモデル名です。
OS version: デバイス上で動作している OS のバージョンです。
UDID: 機器に固有の機器識別番号を示します。
Screen タブ
Screen タブには、接続されている機器の画面が表示されます。 このタブは閲覧専用です。
Console タブ
Console タブには、デバイス固有のiOS Gatewayのログが表示されます。 iOS Gateway Preferencesでロギング設定を行います。
Diagnostics タブ
Diagnostics タブは、接続、プロビジョニング、Xcodeなどに関する問題のトラブルシューティングを支援します。 この機能の使い方については、The iOS Gateway Diagnosticsタブ をご参照ください。
アプリ一覧
iOS GatewayのGUI右側のパネルには、デバイスリストで選択されているiOSデバイスにインストールされているアプリが一覧表示されます。 リストからアプリを右クリックすると、アプリのリストを更新したり、アプリのバンドルIDをコピーするなどのアクションを実行できます。
このリストの一番下にApplication Informationペインが表示されます。 このペインはトグルで開閉でき、選択したオプションはセッション間で持続されます。 このペインには、以下の情報が表示されます:
Name: iOSデバイスの画面に表示されるアプリ名です。
Version: 選択したアプリのリリースバージョンです。
Bundle ID: アプリのフルネームです。 例えば、SafariブラウザのバンドルIDは com.apple.mobilesafari
です。
Developer signed: アプリが開発者用として署名されているかどうかを示します。