UFT Mobileアーキテクチャー
UFT Mobileは、さまざまなテストアプリケーションへのモバイルデバイスアクセスを提供するスタンドアロンサーバーです。UFT Mobileは、異なるテストクライアントがすべて同じUFT Mobileサーバーインスタンスと対話できる分散アーキテクチャーをサポートします。
このトピックの内容:
UFT Mobile環境
UFT Mobileの個々のコンポーネントとそれらの関係は、次の図に示されています。
UFT Mobile環境は、次のコンポーネントで構成されています。
コンポーネント | 機能 |
---|---|
UFT Mobile サーバー |
これは、次のような単一のWebサーバーです。
|
外部PostgreSQLデータベース |
UFT Mobileを既存の外部PostgreSQLデータベースに接続できます。これにより、組織は既存のDBリソースを管理および利用できます。 このオプションは、インストール時に指定します。詳細については、UFT Mobile-Windowsインストール (オンプレミス) またはUFT Mobile-Linuxインストール (オンプレミス) を参照してください。 |
コネクター |
コネクターは、デバイスをUFT Mobileに接続するための軽量ソフトウェアであり、サーバーと一緒に(組み込みコネクター)、またはスタンドアロンコンポーネントとしてインストールできます。コネクターは、分散した場所にある複数のマシン、またはテストツールマシンにインストールできます。詳細については、Windowsマシンにコネクターをインストールする、Linuxマシンにコネクターをインストールする、またはMacマシンにコネクターをインストールするを参照してください。 コネクターは、デバイスへの物理USB接続と、その上の論理ステートマシンを管理します。USB経由でデバイスに接続するためにポートをマップし、デバイスからツールへのリモートスクリーンビューアーストリームを管理します。デバイスの接続または切断、エージェントのインストールの完了、エージェントの開始など、USBライブラリからライフサイクルイベントを受信します。これらのイベントをUFT Mobileサーバーに転送して、デバイスをプールに追加します。コネクターは、デバイスへのアプリのインストールとアンインストールも行います。 |
コネクターを介してアクセスされるテストデバイス |
これらは、テストが実行されるデバイス(スマートフォン/タブレット)です。次のアプリケーションがテストデバイスにコピーされます。
|
SVラボ | SV(Service Virtualization)Labは、他の方法ではテストが難しい領域で実際のサービスを仮想化するための環境仮想化ツールキットです。SVラボはUFT Mobile内に展開され、Service Virtualizationシミュレーションを実行する準備ができています。 |
NVテストマネージャー |
Network Virtualizationは、さまざまなネットワーク条件下で実行されているアプリをテストするためのオプションのコンポーネントです。Network Virtualizationは、ソフトウェアテストプロセス中にテスト環境に障害や制約を課すことによって実際の状況をエミュレートし、それによってソフトウェアテストの精度を向上させます。 |
コネクターの展開シナリオ
コネクターは、デバイスをUFT Mobileに接続するための軽量ソフトウェアです。インストールプロセスの一部としてUFT Mobileサーバーマシンにインストールすることを選択できる組み込みコネクターは、ローカルサーバーと連携するように自動的に構成されます。ただし、コネクターは、開発者やテストエンジニアなど、別のマシンにスタンドアロンコンポーネントとしてインストールすることもできます。通常、次のシナリオの組み合わせが使用されます。
シナリオ | 説明 | 長所 |
---|---|---|
中央デバイスハブ | UFT Mobileサーバーマシンのコネクターに接続されたデバイスの中央ラボ。 | 効率。デバイスをセットアップおよび管理するためのタスクの重複を回避します。 |
分散デバイスハブ | 複数の場所(オンサイト/オフサイト/グローバルに分散)のマシンにインストールされたコネクター。 |
スケーラブル。必要に応じて、新しいラボを追加できます。 |
個人所有のデバイスを持参してください | 開発者/テストエンジニアのマシンにインストールされたコネクター。 |
デバイス上のアプリのハンズオンテストをサポートします。 |
ネットワーク接続
次の図は、UFT Mobileサーバーの物理的な展開に焦点を当てた、よりドリルダウンしたビューを表しています。使用されるさまざまなプロトコルとポートも示されています。
クライアントツールとUFT Mobileサーバー接続
一般的なクライアントツールは、UFT One、LoadRunner、Sprinter、BPM、UFT Developer、およびAppiumスクリプトです。
テストツールクライアントは、次の目的でUFT Mobileサーバーに接続します。
- HTTP/HTTPSを介してデバイスを管理し、アプリをアップロードするためのユーザーインターフェイス(UI)。
- テストと管理のためのAPI(JSONコマンド)。WebSocket(WS)を介して送信されます。
- リモートスクリーンビューアークライアント。
UFT Mobileサーバーとコネクターの接続
コネクターは、UFT MobileサーバーとのWebSocket(WS)接続を確立し、同じソケット上でコネクターからサーバーへ、またはその逆の双方向非同期通信を可能にします。API呼び出しとファイルはWSを介して渡されます。
テストツール、コネクター、およびデバイスの接続性
コネクターは、モバイルライブラリ(Android Debug Bridge(ADB)、モバイルデバイスライブラリ)を使用してAPIトラフィックを通信するために、ポートをモバイルデバイスに転送します。また、エージェントへのWindows Sockets接続を開きます。コネクターは、リモートスクリーンビューアーのポートフォワードをマップします。コネクターは、デバイスをリモートで操作するときの待ち時間を最小限に抑えるために、リモートスクリーンビューアーをツールに直接公開します。UFT Mobileデバイス上のエージェントは、Windows Socketsポートでリッスンします。
高可用性
次の図は、UFT Mobileアクティブ-パッシブ高可用性環境を示しています。
両方のサーバーが常に稼働している必要があることに注意してください。サーバーの1つはそれ自体をアクティブとしてマークし、もう1つはパッシブとしてマークします。ロードバランサーは、すべてのリクエストをアクティブサーバーにリダイレクトします。アクティブサーバーに障害が発生すると、パッシブサーバーがアクティブになり、ロードバランサーがすべてのリクエストをサーバーにリダイレクトし始めます。障害が発生したサーバーを監視して再起動し、パッシブになるようにしてください。
ホストされているデバイス
次の図は、ホストされたデバイスを使用した展開を示しています。
Amazon Device Farmとのインターフェイス
UFT Mobileを使用すると、クラウドベースのAmazon Device Farmと連携して、さまざまなデバイスでテストを実行できます。
次の図では、UFT MobileコネクターがAWS Device Farmとどのようにインターフェイスするかを確認できます。
この統合のためにUFT Mobileを設定する方法の詳細については、AWS Device Farm統合を参照してください。