iOSテスト自動化の準備

Mobile Engine3.0 を使用してiOSテスト自動化を実行するには、デバイスまたはシミュレータ、Mac、モバイルアプリケーションを準備します。

iOSテスト自動化を実行するには、次の手順に従います。

iOSテスト自動化中にサーバーがタイムアウトしないようにするには、サーバー応答のタイムアウトを増やします。これを行うには、以下の手順に従ってください。

  1. プロジェクト > 設定 > TBox > エンジン > リモートサーバー応答タイムアウトに移動します。

  2. さらに 0 を追加して、をデフォルトの 120000 から推奨の 1200000 に増やします。

テスト自動化のためのiOSデバイスまたはシミュレーターを準備する

以下の手順に従ってください。

設定やオプションの具体的な場所は、お使いのデバイスによって異なる場合があります。

テスト自動化のためのiOSデバイスを準備する

テスト自動化のためのiOSデバイスを準備するには、以下の手順に従ってください。

  1. iOSデバイスをUSB経由でPCに接続します。

  2. モバイルデバイスとPCで接続を承認します。

  3. iOSデバイスで、設定に移動し、以下の手順を実行します。

    • Developer Settings に移動し、 Enable UI Automation オプションを有効にします。

    • Safari >詳細設定に移動し、 Web Inspector オプションを有効にします。

  1. Tosca Commander を開き、テストケースを準備します。

  2. テストケースを実行します。

テスト自動化のためのiOSシミュレータを準備します。

テスト自動化のためのiOSシミュレータを準備するには、次の手順に従います。

  1. Tricentis Mobile Agent がインストールされているコンピューターに有効な iOSシミュレータをインストールして設定します。

  1. Tosca Commander を開き、テストケースを準備します。

  2. テストケースを実行します。

テスト自動化のためにiOSハイブリッドアプリケーションを準備する

テスト自動化のためにiOSハイブリッドアプリケーションを準備するには、以下を行います。

WebView を設定する

WebView 内のすべてのクリックが正しく機能するようにするには、 WebView をフルスクリーンモードにする必要があります。

iOS のバージョン11.0以降を使用してアプリケーションを構築する場合は、正しいターゲットとアーキテクチャを定義する必要があります。

これを行うには、以下の手順に従ってください。

  1. Xcodeを開き、プロジェクトをクリックします。

  2. 変更したいターゲットをクリックします。

  3. Deployment Target ドロップダウンメニューからiOSのバージョンを選択します。

Deployment Targetを定義 する

  1. Build Settings タブに切り替えます。

  2. 有効なアーキテクチャドロップダウンメニューから arm64 を選択します。

アーキテクチャを選択する

Xcode でアクセシビリティプロパティを設定する

iOSテスト自動化のパフォーマンスを向上させるには、Xcodeでアクセシビリティプロパティを設定します。詳細情報については、公式の Apple Developer ドキュメントを参照してください。

Xcodeで Accessibility プロパティを設定するには、以下の手順に従ってください。

  1. Xコードを開きます。

  2. 親コンテナのアクセシビリティプロパティを無効に設定します。

  3. コントロールのアクセシビリティプロパティを有効に設定します。

アクセシビリティ有効 に設定します

ButtonSelectorListViewaccessibilityLabel を設定します。

ButtonSelector および ListView コントロールを xOS モジュールとして操作するには、 accessibilityLabel プロパティを変更する必要があります。

  • ButtonSelector の場合、iOSアプリケーションのコード内の UISegmentedControl の下の accessibilityLabel を変更します。このプロパティの値は、AndroidアプリケーションのこのコントロールIDと一致させる必要があります。

  • ListView の場合、iOSアプリケーションのコード内の UITableView の下の accessibilityLabel を変更します。このプロパティの値は、AndroidアプリケーションのこのコントロールのIDと一致させる必要があります。

テスト自動化のためのiOSネイティブアプリケーションを準備する

ネイティブiOSコントロールをスキャンし、操作するには、コントロールのアクセシビリティプロパティを修正する必要があります。詳細情報については、以下の章をご覧ください。

テスト自動化のためのiOS モバイルウェブアプリケーションを準備する

iOS 12のモバイルウェブアプリケーションでHTMLコントロールをスキャンし、操作するには、アプリ開発者がモバイルウェブページの <title> タグを記入する必要があります。

Xamarin アプリケーションに関する推奨事項

Mobile Engine 3.0 を使用すると、 Xamarin フレームワークで作成されたアプリケーションを操作することができます。すべての標準的なモバイルウェブコントロールとネイティブコントロールを使用できます。この章では、 Mobile Engine 3.0 を使用したテスト用に Xamarin アプリケーションを最適化する方法について説明します。

コントロールのIDハンドリング

テストの精度を高めるには、次の点を考慮してください。

  • Xamarin Forms の場合:オプションの AutomationId パラメータを必ず入力してください。Mobile Engine 3.0 は、スキャン中にこのパラメータを Content Description として認識し、コントロールを操作するための一意のIDとして使用できます。

  • Xamarin Android の場合: ContentDescription パラメータを必ず設定してください。Mobile Engine 3.0 は、スキャン中にこのパラメータを Content Description として認識し、コントロールを操作するための一意のIDとして使用できます。