モバイルモジュール

標準サブセットEngines- >Mobile フォルダには、 Mobile Engine 3.0 の特定のタスクを実行するモジュールが含まれています。

機能

Desired Capabilities は、Appiumにおけるテストセッションの動作を制御する重要なパラメータを定義することを可能にします。これらの設定は、Appiumサーバーにテストを実行する方法を指示します。テストでの Desired Capabilities の使用方法の詳細については、 Desired Capabilities を設定する を参照してください。

標準サブセット Engines- >;Mobile- >Capabilities フォルダには、機能を使用してテスト実行環境をカスタマイズするモジュールが含まれています。

Desired Capabilitiesの設定

Module Set Desired Capabilities により、テスト実行で Desired Capabilities を適用できるようになります。これは、テストケース(see chapter "テスト実行のために Desired Capabilities を設定する")の最初のテストステップである必要があります。

モジュールには、以下のModuleAttributeがあります。

ModuleAttribute

説明

能力

適用する Desired Capability を指定してください。

名前と値は大文字と小文字を区別します。

この例では、 Androidテスト実行の起動時間を短縮するために、 Desired CapabilitiesskipServerInstallation および skipDeviceInitialization を適用します。

テストケースにDesired Capabilitiesモジュールを設定する

Desired Capabilitiesを追加する

Add Desired Capabilities モジュールでは、既に定義した機能を上書きすることなく、テスト実行に新しい機能を追加することができます。このモジュールの詳しい使用方法については、「テスト実行のためのDesired Capabilitiesの追加」を参照してください。

モジュールには、以下のModuleAttributeがあります。

ModuleAttribute

説明

能力

適用する Desired Capability を指定してください。

名前と値は大文字と小文字を区別することにご注意ください。

この例では、複数のクラウドプロバイダーでテストケースを実行し、動的に機能を変更します。同時に、すべてのプロバイダーに適用される一連の共有機能を保持します。これを行うには、 Desired Capabilitiesの設定Desired Capabilitiesを追加する モジュールの両方を使用します。

Tricentis Device Cloud (TDC) でテストを実行する際には、テストをカスタマイズするために Desired Capabilities を次のように設定します。

  • タイムアウトするまで最大300秒お待ちください。デバイスやネットワークの遅延がある場合、テストの完了に十分な時間を与えられるからです。

  • さまざまなデバイスをテストする場合、テスト用にクラウドプールからランダムなデバイスを選択します。これにより、デバイス特有の問題を把握し、より広範なカバレッジを提供することができます。

  • デバイスのスクリーンショットを無効にしてください。特に、視覚的な検証が必要ない場合は、不要なスクリーンショットのキャプチャを省略することで、テスト実行時間を短縮できるためです。

  • 各セッションの開始時にデバイスを再起動するように設定してください。テストランごとにクリーンな環境を確保し、残っているプロセスやデータからの問題を避けるためです。

ネイティブアプリをテストする際には、アプリIDを指定するために Desired Capability を追加します。これにより、確実に正しいアプリがデバイス上で起動され、さらに以前に定義された機能も適用されます。

Desired Capabilitiesを追加のモジュールがない場合、 Desired Capabilitiesを設定のモジュールを使用する必要があります。こちらは、アプリIDを含めるために、以前の機能を手動で再構成する必要があります。能力を一つずつ構築することで、テストのセットアップがよりスムーズになり、柔軟性が増して、エラーが発生しにくくなります。

Desired Capabilitiesを設定し、テストケースに Desired Capabilitiesモジュールを追加します

Androidスナックバー

モジュール Androidスナックバーを使用すると、Androidアプリケーションでスナックバーを操作できるようになります。

以下の ModuleAttributes があります。

ModuleAttribute

説明

テキスト

スナックバーに表示するテキストを指定します。

アクション

スナックバーにボタンが含まれている場合は、そのボタンに対して実行したいアクションを指定してください。

この例では、以下の操作を行います:

  • モバイルアプリケーション」モジュールでモバイルアプリを開きます。

  • スナックバーを遅延して表示」ボタンをクリックすると、スナックバーが表示されます。

  • ActionMode「 WaitOn 」を使用して「スピードがすべてを変更する」というテキストメッセージを含むスナックバーが表示されるまで待機します。

  • スピードがすべてを変更する」というメッセージかどうかを検証します。

  • スナックバーのボタンをクリックして閉じます。

テストケースの「Android スナックバー」モジュール

Click On Screen

このモジュールでは、モバイルデバイス画面の特定のポイントにタップジェスチャを実行できます。

以下の ModuleAttributes を持っています:

ModuleAttribute

説明

X

水平クリック位置。x 座標をパーセントまたはピクセルで指定します。

  • 画面のパーセンテージには、 0(左)から 100(右)までの正の整数を入力します。例えば、 50 または 50%を入力します。

  • ピクセルの場合は、 0左)から最大画面解像度までの正の整数を入力し、接尾辞をpx とします。例えば 250px と入力します。

Y

縦のクリック位置です。y座標をパーセントまたはピクセルで指定します。

  • 画面のパーセンテージには、 0(上)から 100(下)までの正の整数を入力します。例えば、 50 または 50%を入力します。

  • ピクセルの場合は、 0(上)から最大画面解像度までの正の整数を入力し、接尾辞をpxとします。例えば 250px と入力します。

この例では、画面の左上隅からx座標の 10% 、y座標の 50% の位置で、タップジェスチャを実行します。

テストケースのモジュール「画面をクリック

モバイルデバイスからファイルをダウンロードします。

モジュール Download File from Mobile Device を使用すると、Androidデバイスからコンピューター にファイルをダウンロードできます。(see chapter "ファイルをAndroidに転送する")。

ファイルがすでにコンピュータに存在する場合は、 Mobile Engine 3.0 がファイルを上書きします。

以下の ModuleAttributes を持っています:

ModuleAttribute

説明

モバイルデバイスパス

ファイル名と拡張子を含め、アップロードするファイルのフルパスを指定します。

パスにはスラッシュ(/)を使用してください。

例: /sdcard/Download/abc.pdf

Samsungデバイスの場合は、ファイルパスの Internal Storagesdcard に置き換えてください。例えば /Internal storage/Download/abc.txt/sdcard/Download/abc.txt に置き換えます。

デスクトップパス

ファイル名と拡張子を含め、ファイルを保存する場所へのフルパスを指定します。

例: D: \abc.pdf

別のファイル名を指定することもできます。

この例では、 example.png ファイルをAndroidデバイスからコンピュータにダウンロードします。

テストケースのモジュール「モバイルデバイスからファイルをダウンロード

Draw On Screen

モジュール Draw On Screen を使用すると、画面上に直接形状を描くことができます。

モジュールは以下の ModuleAttributes を持っています:

ModuleAttribute

説明

ロングタップ

描画をタップで開始するか、ロングタップで開始するかを指定します。

可能な値は以下のとおりです:

  • TRUE :ロングタップから開始します。

  • False :タップから始めます。

期間

移動の継続時間をミリ秒単位で指定します。

値が大きいほど、動作は遅く、短くなります。値が小さいほど、移動は速く、長くなります。

この ModuleAttribute はオプションです。デフォルト値は 300 msです。

ポイント->; X

開始X座標をパーセントで指定します。左端の値は 0 で、右端の値は 100 です。

ポイント->Y

開始y座標をパーセントで指定します。上の値は 0 で、下の値は 100 です。

この例では、スワイプの3つの動きで簡単な図形を描きます。1回の動きは1秒。

テストケースにおけるDraw On Screen Module

End Appium Session

モジュール End Appium Session を使用すると、現在の Appiumセッションを終了できます。

この例では、以下のアクションを実行します。

  • 新しいAppiumセッションを起動し、URL http://sampleapp.tricentis.com/101/app.php を開きます。

  • 画面上のモバイルコントロールと対話します。

  • テストステップ「Appiumセッションを終了する」で、モジュール「Appiumセッションを終了する」を使用して現在のAppiumセッションを終了します。

  • 新しいAppiumセッションを起動し、同じ画面を操作します。

テストケースのモジュール「Appiumセッションを終了する

Execute Driver Script

Exectute Driver Scriptモジュールを使用すると、JavaScriptからの多くのコマンドをまとめて、Appiumサーバー上で一度に実行できるようになります。Appiumサーバーは、このコードを現在のセッションで実行し、スクリプトに指定されたすべての値を返します。JavaScriptコードの記述に関する詳細情報は、Appiumのドキュメントの execute-driver-plugin (新しいタブで開きます)と WebdriverIO (新しいタブで開きます)を参照してください。

このモジュールは、 Tricentis Mobile AgentTricentis Device Cloud で接続されたデバイスで動作します。

モジュールは以下の ModuleAttributes を持っています:

ModuleAttribute

説明

ファイルからのドライバスクリプト

Toscaが動作しているデバイスに保存されているJavaScriptファイルの名前を指定します。

ファイルのドライバ スクリプト、またはインライン ドライバ スクリプトのいずれかの値を指定する必要があります。

インラインドライバースクリプト

ドライバースクリプトをテストステップの値と入力してください。

ファイルのドライバ スクリプト、またはインライン ドライバ スクリプトのいずれかの値を指定する必要があります。

結果

スクリプトで指定されたすべての値を返します。

この例では、ドライバスクリプトが値「 testuser1 」のプロパティ「 username 」を返すかどうかを確認します。

テストケースのモジュール「ドライバスクリプトを実行

AppiumセッションIDを取得する

モジュール Get Appium Session ID で、 AppiumセッションIDをバッファに保存できるようになります。

モジュールは以下のModuleAttributeを持っています:

ModuleAttribute

説明

バッファ名称

既存のAppiumセッションのIDを保存するバッファの名前を指定します。

この例では、AppiumセッションIDを SampleBuffer という名前のバッファに保存します。

テストケースでAppiumセッションIDモジュールを取得する

ME3.0ハードウェアボタンの操作

モジュール ME3.0ハードウェアボタンを操作することにより、以下のプラットフォーム固有のハードウェアボタンを操作できます

  • iOSとAndroidのホームボタン

  • Androidの戻るボタン

  • Androidのアプリ選択ボタン

以下の ModuleAttribute を持っています:

ModuleAttribute

説明

ボタン

どのボタンをクリックするかを指定します。可能な値は以下のとおりです:

  • ホーム

  • 戻る

  • アプリケーションセレクタ

この例では、Androidで「戻る」ボタンを押します。

テストケースのモジュール「ME 3.0ハードウェアボタン操作

ME3.0 Set Device Orientation

モジュール ME3.0 Set Device Orientation で、デバイスの縦向きと横向きのどちらでMobile Engine3.0を操作するかを設定できます。

以下の ModuleAttribute を持っています:

ModuleAttribute

説明

オリエンテーション

デバイスの向きを指定し、ActionModeを Select に設定します。以下の値が使用可能です:

  • ポートレート

  • 横向き

以下の例では、画面の向きを「横向き」に設定しています。

テストケースのモジュール「ME3.0でデバイスの向きを設定する

モバイルアプリを開く

Open Mobile App モジュールでは、Android またはiOSデバイスでネイティブとハイブリッドモバイルアプリケーションを開くことができます。

このステップは、 Mobile Engine 3.0 テストケースの最初のテストステップで必須です。唯一の例外は、 Desired Capabilities を設定したい場合です。

Open Mobile App モジュールに関する詳細は、 オープンモバイルアプリケーション を参照してください。

モジュールには次のModuleAttributeがあります。

ModuleAttribute

説明

アプリケーション

Androidデバイスとエミュレータの場合は、操作するアプリケーションのフルパスまたは PackageNameActivity を指定してください。PackageNameActivity をフォワードスラッシュ(/)で区切ってください。ただし AppPackageAppActivity ModuleAttributes を使用することを推奨します。

iOS デバイスとシミュレータの場合は、操作するアプリケーションのフルパスまたは BundleID を指定してください。ただし BundleID ModuleAttribute を使用することを推奨します。

バンドルID

iOS デバイスとシミュレータの場合は、操作するアプリケーションの BundleID を指定してください。

アプリパッケージ

Androidデバイスとエミュレータの場合は、操作するアプリケーションの PackageName を指定します。

アクティビティ

Androidデバイスとエミュレータの場合は、操作するアプリケーションの Activity を指定してください。

アプリケーションパス

Tricentis Mobile Agent に接続されているデバイスの場合は、操作するアプリケーションのフルパスを指定します。

この例では、モバイルアプリを開くモジュールで、 PackageName と操作するアプリケーションのアクティビティを指定して、モバイルアプリケーションを開きます。

テストケースのモバイルアプリを開くモジュール

ネイティブまたはハイブリッドアプリを開きたい場合は、標準サブセットからモジュール OpenURL を使用してください。

Tricentis Tosca 12.3またはそれ以前のバージョンを 2024.2 LTS にアップグレードする際は、 Open Mobile App モジュールが正しく動作するように XEngines の移行を行う必要があります。そのためには、プロジェクトルート要素を右クリックし、 XEngines Migration->; Update project to current version を選択してください。

Send Text Input To Focused Control

モジュール Send Text Input To Focused Control を使用すると、テキスト入力をフォーカス制御に送信して、ユーザーアクションをシミュレートできます。

モジュールは以下のModuleAttributeを持っています:

ModuleAttribute

説明

テキスト

フォーカス制御に送信したいテキスト入力を指定します。

この例では、テキスト入力を動的検索フィールドに送信します。

  • テストステップ「フォーカス制御」は、動的検索フィールドにフォーカスを設定します。

  • 次のテストステップは、モジュール「テキスト入力をフォーカス制御に送信」を使用して、テキスト入力を検索フィールドに送信します。

  • 検索後、一致検索クエリの結果がドロップダウンリストに表示されます。テストステップ「到着空港」は、ドロップダウンリストから正しい結果を選択します。

テストケース内のモジュール「テキスト入力をフォーカス制御に送信

キーボードの自動非表示設定

モジュール Set Autohide Keyboard を使用すると、ネイティブアプリケーションのキーボードの自動非表示モードを無効にすることができます。これは、テキスト ボックスの操作のパフォーマンスに影響します(see chapter "iOSでキーボードの自動非表示を無効にするd")。

モジュールには、以下のModuleAttributeがあります。

ModuleAttribute

説明

キーボードの自動非表示

iOS のオンスクリーンキーボードの自動非表示モードを有効にするかどうかを指定します。

可能な値は以下のとおりです:

  • TRUE :自動非表示モードを有効にします。

  • False :自動非表示モードを無効にします。

この例では、iOSオンスクリーンキーボードのデフォルトの自動非表示モードを無効にします。

テストケースのモジュール「キーボードの自動非表示を設定する

Set iOS biometrics enrollment

モジュール Set iOS biometrics enrollment を使用すると、 iOSシミュレータで FaceID または TouchID ユーザー認証を有効または無効にすることができます。

モジュールは以下のModuleAttributeを持っています:

ModuleAttribute

説明

状態

iOSシミュレータの生体認証登録を有効または無効にします。

可能な値は以下のとおりです:

  • TRUE :バイオメトリクス登録を有効にします。

  • False :バイオメトリクス登録を無効にします。

この例では、以下の操作を行います。

  • モジュール「モバイルアプリを開く」でモバイルアプリケーションを開きます。

  • iOSシミュレータで生体認証を有効にします。テストステップ「 iOSバイオメトリクス登録を設定」で、ModuleAttributeの状態を「 TRUE 」に設定します。

  • テストステップ「ログインボタンをクリック」で、ユーザー認証が必要なアクションをトリガーするボタンをクリックします。

  • テストステップ「 iOSバイオメトリクスを使用」で、ユーザー認証の種類を「 TouchID 」に設定します。

  • ポジティブ認証をトリガーするには、テストステップの値「ポジティブ認証」を「 TRUE 」に設定します。

テストケースでモジュール「iOSバイオメトリクス登録を設定」とモジュール「 iOSバイオメトリクス認証を使用」を設定します。

Swipe On Screen

モジュール Swipe On Screen を使用すると、スワイプ操作を画面上で直接実行できます。スワイプ移動の長さはモバイル画面サイズの3分の1に相当します。

モジュールは以下の ModuleAttributes を持っています:

ModuleAttribute

説明

方向

実行したいスワイプのタイプを指定します。指定可能な値は以下のとおりです。

  • 右から左にスワイプ動作を行うには、SWIPELEFT と入力してください。

  • 左から右にスワイプ動作を行うには、SWIPERIGHT と入力してください。

  • 下から上にスワイプ動作を行うには、SWIPEUP と入力してください。

  • 上から下にスワイプ動作を行うには、 SWIPEDOWN と入力してください。

  • SWIPE は、開始点のみ、終了点のみ、または両方を定義してスワイプを実行します。少なくとも1点は指定しなければならないことに注意してください。

期間

スワイプの継続時間をミリ秒単位で指定します。

値が高いほど、スワイプは遅く、短くなります。値が低いほど、スワイプは速く、長くなります。

デフォルト値は 300 msです。

スタート地点

スワイプの開始座標を定義します。

異なる座標を指定することができます。一方の座標を指定した場合は、もう一方の座標の値も入力する必要があります。

開始点を指定しない場合、スワイプ動作のデフォルトの開始点は、スワイプ方向に対して反対側の画面端から10%の位置になるので、注意してください。例えば、方向を SWIPEUP に設定すると、下端から10%の位置から動き始めます。

スタート地点->; X

X座標をパーセントまたはピクセルで指定してください。

  • 画面のパーセンテージには、 0(左)から 100(右)までの正の整数を入力します。例えば、 50 または 50%を入力します。

  • ピクセルの場合は、 0左)から最大画面解像度までの正の整数を入力し、接尾辞をpx とします。例えば 250px と入力します。

スタート地点->; Y

y座標をパーセントまたはピクセルで指定してください。

  • 画面のパーセンテージには、 0(上)から 100(下)までの正の整数を入力します。例えば、 50 または 50%を入力します。

  • ピクセルの場合は、 0(上)から最大画面解像度までの正の整数を入力し、接尾辞をpxとします。例えば 250px と入力します。

終点

スワイプの終了座標を定義します。

終了座標を入力する場合は、方向スワイプに設定します。

一方の座標を指定した場合は、もう一方の座標の値も入力する必要があります。

終了点を指定しない場合、スワイプ動作のデフォルトは画面の中心であることにご注意ください。例えば、方向をスワイプに設定し、開始点を座標90%(x)と10%(y)にすると、動作は右上隅から始まり、画面の中心で座標90%(x)と50%(y)で垂直スワイプで終了します。

終点->X

X座標をパーセントまたはピクセルで指定してください。

  • 画面のパーセンテージには、 0(左)から 100(右)までの正の整数を入力します。例えば、 50 または 50%を入力します。

  • ピクセルの場合は、 0左)から最大画面解像度までの正の整数を入力し、接尾辞をpx とします。例えば 250px と入力します。

終点->Y

y座標をパーセントまたはピクセルで指定してください。

  • 画面のパーセンテージには、 0(上)から 100(下)までの正の整数を入力します。例えば、 50 または 50%を入力します。

  • ピクセルの場合は、 0(上)から最大画面解像度までの正の整数を入力し、接尾辞をpxとします。例えば 250px と入力します。

この例では、1秒間、スワイプ上昇します。

テストケースのモジュール「画面上でスワイプする

Switch Mobile App

モジュール Switch Mobile App により、単一のテストケース中に異なるモバイルアプリケーションに切り替えることができます。

モジュールは以下のModuleAttributeを持っています:

ModuleAttribute

説明

アプリケーション

切り替え先のアプリケーションを指定します:

  • iOSアプリケーションの場合は、その BundleID を使用します。

  • Androidアプリケーションの場合は、その PackageName を使用します。Activity を指定しないでください。

この例では、以下の操作を実行します。

  • モジュール「モバイルアプリを開く」を使用して、最初のモバイルアプリケーションを開きます。

  • 最初のアプリケーションで画面の位置をクリックします。

  • モジュール「モバイルアプリを切り替える」を使用して、2番目のモバイルアプリケーションに切り替えます。

  • 2番目のモバイルアプリケーションで画面の位置をクリックします。

テストケースのモジュール「モバイルアプリを切り替える

Upload File to Mobile Device

モジュール Upload File to Mobile Device を使用すると、コンピューターからAndroidデバイスにファイルをアップロードできます(see chapter "ファイルをAndroidに転送する")。ファイルアップロードの上限は2GBです。

ファイルがAndroidデバイス上に既に存在する場合、 Mobile Engine3.0 はファイルを上書きします。

以下の モジュール属性を持っています:

ModuleAttribute

説明

デスクトップパス

ファイル名と拡張子を含め、アップロードするファイルのフルパスを指定します。

例: D: \abc.pdf

モバイルデバイスパス

ファイル名と拡張子を含め、ファイルを保存する場所へのフルパスを指定します。

パスにはスラッシュ(/)を使用してください。

例: /sdcard/Download/abc.pdf

別のファイル名を指定することもできます。

Samsungデバイスの場合は、ファイルパスの Internal Storagesdcard に置き換えてください。例えば /Internal storage/Download/abc.txt/sdcard/Download/abc.txt に置き換えます。

Use Android fingerprint authentication

モジュール Use Android fingerprint authentication を使用すると、Androidエミュレーターで指紋認証を使用できるようになります。

テストケースでこのモジュールを使用するには、まず Androidエミュレータで指紋IDを設定する必要があります。

モジュールは以下のModuleAttributeを持っています:

ModuleAttribute

説明

指紋ID

エミュレータで設定した、ユーザー認証に使用したい指紋IDを入力します。

この例では、以下の操作を行います:

  • モバイルアプリで開く」モジュールでモバイルアプリケーションを開きます。

  • ログインボタンをクリックする」というテストステップで、ユーザー認証を必要とするボタンをクリックします。

  • Androidの指紋認証を使用する」というテストステップでは、指紋 IDを指定します。エミュレータに同じ ID を設定している場合、認証は有効です。その結果、テストステップ。

テストケースの「Androidの指紋認証を使用する」モジュール

Use iOS biometric authentication

モジュール Use iOS biometric authentication使用すると、iOSシミュレータで FaceID または TouchID ユーザー認証を使用できます。

このモジュールを使用するには、iOSシミュレータで生体認証登録を有効にする必要があります。そのためにはモジュール Set iOS biometrics enrollment を使用します。

モジュールは以下の ModuleAttributes を持っています:

ModuleAttribute

説明

バイオメトリクス認証の種類

使用する生体認証の種類を指定します。

可能な値は以下のとおりです:

  • FaceID :顔認証を使用します。

  • TouchID :指紋認証を使用します。

ポジティブ認証

認証が肯定的か否定的かを指定します。

可能な値は以下のとおりです:

  • TRUE :正の認証を使用します。

  • False :負の認証を使用します。

この例では、以下の操作を行います。

  • モジュール「モバイルアプリを開く」でモバイルアプリケーションを開きます。

  • iOSシミュレータで生体認証を有効にします。テストステップ「 iOSバイオメトリクス登録を設定」で、ModuleAttributeの状態を「 TRUE 」に設定します。

  • テストステップ「ログインボタンをクリック」で、ユーザー認証が必要なアクションをトリガーするボタンをクリックします。

  • テストステップ「 iOSバイオメトリクスを使用」で、ユーザー認証の種類を「 TouchID 」に設定します。

  • ポジティブ認証をトリガーするには、テストステップの値「ポジティブ認証」を「 TRUE 」に設定します。

テストケースでモジュール「iOSバイオメトリクス登録を設定」とモジュール「 iOSバイオメトリクス認証を使用」を設定します。