iOSテスト自動化の準備
Mobile Engine3.0 を使用してiOSテスト自動化を実行するには、デバイスまたはシミュレータ、Mac、モバイルアプリケーションを準備します。
iOSテスト自動化を実行するには、次の手順に従います。
|
iOSテスト自動化中にサーバーがタイムアウトしないようにするには、サーバー応答のタイムアウトを増やします。これを行うには、以下の手順に従ってください。
|
テスト自動化のためのiOSデバイスまたはシミュレーターを準備する
以下の手順に従ってください。
|
設定やオプションの具体的な場所は、お使いのデバイスによって異なる場合があります。 |
テスト自動化のためのiOSデバイスを準備するには、以下の手順に従ってください。
-
iOSデバイスをUSB経由でPCに接続します。
-
モバイルデバイスとPCで接続を承認します。
-
iOSデバイスで、設定に移動し、以下の手順を実行します。
-
Developer Settings に移動し、 Enable UI Automation オプションを有効にします。
-
Safari >詳細設定に移動し、 Web Inspector オプションを有効にします。
-
-
Tosca Commander を開き、テストケースを準備します。
-
ハイブリッドまたはモバイルのウェブアプリケーションをテストするには、テストコンフィギュレーションパラメータ Browser を SafariiOS という値で作成します。
-
ネイティブまたはハイブリッドアプリケーションをテストするためには、テストケースの最初のテストステップとしてオープンモバイルアプリテストステップを作成します。
-
-
テストケースを実行します。
テスト自動化のためのiOSシミュレータを準備するには、次の手順に従います。
-
Tricentis Mobile Agent がインストールされているコンピューターに有効な iOSシミュレータをインストールして設定します。
-
Tosca Commander を開き、テストケースを準備します。
-
ハイブリッドまたはモバイルのウェブアプリケーションをテストするには、テストコンフィギュレーションパラメータ Browser を SafariiOS という値で作成します。
-
ネイティブまたはハイブリッドアプリケーションをテストするためには、テストケースの最初のテストステップとしてオープンモバイルアプリテストステップを作成します。
-
-
テストケースを実行します。
テスト自動化のためにiOSハイブリッドアプリケーションを準備する
テスト自動化のためにiOSハイブリッドアプリケーションを準備するには、以下を行います。
WebView 内のすべてのクリックが正しく機能するようにするには、 WebView をフルスクリーンモードにする必要があります。
iOS のバージョン11.0以降を使用してアプリケーションを構築する場合は、正しいターゲットとアーキテクチャを定義する必要があります。
これを行うには、以下の手順に従ってください。
-
Xcodeを開き、プロジェクトをクリックします。
-
変更したいターゲットをクリックします。
-
Deployment Target ドロップダウンメニューからiOSのバージョンを選択します。
Deployment Targetを定義 する
-
Build Settings タブに切り替えます。
-
有効なアーキテクチャドロップダウンメニューから arm64 を選択します。
アーキテクチャを選択する
iOSテスト自動化のパフォーマンスを向上させるには、Xcodeでアクセシビリティプロパティを設定します。詳細情報については、公式の Apple Developer ドキュメントを参照してください。
Xcodeで Accessibility プロパティを設定するには、以下の手順に従ってください。
-
Xコードを開きます。
-
親コンテナのアクセシビリティプロパティを無効に設定します。
-
コントロールのアクセシビリティプロパティを有効に設定します。
アクセシビリティを有効 に設定します
ButtonSelector と ListView の accessibilityLabel を設定します。
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として使用できます。