インストールと構成のベストプラクティス

このセクションでは、インストールと構成に関するベストプラクティスについて詳しく説明します。

OpenText Functional Testing Labは、フルインストール (以前のインストールがない場合) として、または既存のインストールへのアップグレードとしてインストールできます。インストーラーは、すでにインストールされているファイルを確認し、関連するファイルをインストールまたは更新します。

デプロイメントに関する一般的な考慮事項

異なるテストクライアントが同じサーバーインスタンスと対話できる分散アーキテクチャーがサポートされています。

デプロイメントにはいくつかのコンポーネントがあります。

コンポーネント

機能

サーバー

これは、物理環境または仮想環境にインストールできる単一のWebサーバーです。

それは次のような役割を果たします。

  • モバイルデバイスへのテストツールクライアント呼び出しを仲介し、実際のモバイルデバイスでテストを記録および実行するためのテストツール内のユーザーインターフェイスを提供します。
  • テスト用のアプリを受け入れ、アプリのバージョンを管理します。
  • 管理者が次のことを行うためのユーザーインターフェイス (ラボ管理コンソール) を提供します。
    • ユーザーの管理。
    • アプリを管理し、OSやバージョンなどのプロパティを表示する。
    • デバイスの制御: デバイスをリモートで再起動、ロック解除、または開く。
    • コネクターの表示と管理。
    • プロキシ定義やパッケージングサービスなど、ユーザー向けに設定を構成する。
    • セキュリティスキャン、使用状況、群衆テスト、SDKコンプライアンスなどの拡張サービスを実現する。

注: サーバーをインストールするときに、デバイスをサーバーインスタンスに直接接続する場合は、組み込みコネクターをインストールするオプションがあります。

PostgreSQLデータベース

OpenText Functional Testing Labを既存の外部PostgreSQLデータベースに接続するか、サーバーインストールに組み込まれているデータベースを使用するかを選択できます。このオプションは、インストール時に指定します。

詳細については、WindowsインストールまたはLinuxインストールを参照してください。

コネクター

このコネクターは、デバイスをラボに接続するための軽量のソフトウェアとして設計されており、スタンドアロンコンポーネントとしてインストールできます。コネクターは、分散した場所にある複数のマシン、またはテストツールマシンにインストールできます。コネクターは、Windows、Linux、またはMacマシンにインストールできます。

このコネクターは、デバイスをラボに接続するための軽量のソフトウェアとして設計されており、スタンドアロンコンポーネントとしてインストールできます。コネクターは、分散した場所にある複数のマシン、またはテストツールマシンにインストールできます。コネクターは、Windows、Linux、またはMacマシンにインストールできます。

高可用性

複数のサーバーを使用するアクティブ/パッシブ構成で高可用性を構成できます。このモードでは、ロードバランサーがすべてのリクエストをルーティングするアクティブなOpenText Functional Testing Labサーバーが1台あり、アクティブサーバーに障害が発生した場合に引き継ぐ準備ができている別のパッシブサーバーがあります。詳細については、高可用性サポートを参照してください。

ファイルストレージシステム

アプリケーションはデータベースに保存されなくなりましたが、ファイルシステムに保存されます。インストールまたはアップグレード時に、OpenText Functional Testing Labにアップロードされたアプリケーションを保存する宛先フォルダーを選択できます。

また、アプリケーションごとのアップロード数を制御したり、アプリケーションの古いアップロードを自動的に削除したりすることもできます。これにより、管理者は、維持する必要のあるアプリケーションのアップロード数を管理しやすくなり、ファイルストレージシステムの負荷が軽減されます。詳細については、Windowsインストールのアプリケーションファイルストレージの構成に関するセクションと、一般管理設定の [アプリのアップロードを制限する] セクションを参照してください。

トップに戻る

デプロイメントシナリオ

OpenText Functional Testing Labデプロイメントシナリオの決定ポイントは、顧客の要件によって異なります。

シナリオ

説明

長所

All-in-one

OpenText Functional Testing Labサーバー、データベース、組み込みコネクターを単一ボックスでデプロイメント。

シンプルさ。概念実証やローカルでの設置に最適です。

3層展開

OpenText Functional Testing Labサーバーとデータベースを別の場所にインストールして、Web層とデータ層を分離します。

Web層とデータベース層のスケーラビリティ。Webおよびデータベース管理に関するローカルITのベストプラクティスをサポートします。

コネクター/デバイスのデプロイメントについては、次のシナリオが考慮されます。

シナリオ

説明

長所

中央デバイスハブ

OpenText Functional Testing Labサーバーマシンのコネクターに接続されたデバイスの中央ラボ。

効率。デバイスをセットアップおよび管理するためのタスクの重複を回避します。

分散デバイスハブ

複数の場所 (オンサイト/オフサイト/グローバルに分散) のマシンにインストールされたコネクター。

スケーラブル。必要に応じて、新しいラボを追加できます。

個人所有デバイスの業務利用 開発者/テストエンジニアのマシンにインストールされたコネクター。 デバイス上のアプリのハンズオンテストをサポートします。

トップに戻る

ハードウェア要件

ハードウェア要件の完全なリストは、サポートマトリックスで入手できます。

ハードウェアリソースを計画するときは、次のパラメーターを考慮してください。

コンポーネント

メモリ

CPU

ディスク領域

サーバー

OpenText Functional Testing LabサーバーはJavaアプリケーションです。したがって、事前定義された量のホストメモリが使用されます。消費されるメモリの量は、シミュレーションセッション (ユーザーセッション) の数の影響を受けます。最小メモリ要件は8GBです。中規模のデプロイメント (デバイス30台未満) の場合は8GB、大規模なデプロイメント (デバイス30台以上) の場合は16GBをお勧めします。

 

* マシンのメモリに基づいて、サーバーをインストール、アップグレード、または変更するときに、Java仮想マシン (JVM) の最大ヒープサイズを増やすことをお勧めします。たとえば、マシンが8GBの場合、Javaヒープサイズを最大4GBまで増やすことができます。

サーバーのCPU消費量は、処理されるリクエストの数によって異なります。最小要件は、x64プロセッサー、2.2GHzです。

サーバーのディスク領域の使用量は、生成されたログ、パッケージアプリケーション、プロセスなどのいくつかの要因によって異なります。

少なくとも20GBをお勧めします。一般インストールには15GB、一時フォルダーには5GB。バージョン3.5以降では、TMP/TEMPとは異なる一時フォルダーを指定できることに注意してください。

システムディスクにはさらに1GBの空きディスク容量が必要です。

PostgreSQL DB

PostgreSQLのメモリ消費量は、実行に必要なSQLクエリの影響を受けます。メモリの最小要件は2GBです。中規模のデプロイメント (デバイス30台未満) の場合は少なくとも8GB、大規模なデプロイメント (デバイス30台を超える) の場合は16GB以上を強くお勧めします。

PostgreSQLはプロセスベースです。最小要件は、デュアルコアCPU、2.2GHzです。

PostgreSQLでのディスク領域の使用量はデータサイズによって異なります。Windowsでは、PostgreSQLはC: ドライブにインストールされるため、そこにディスク領域を割り当てる必要があります。

コネクター

OpenText Functional Testing LabコネクターはJavaアプリケーションです。したがって、事前定義された量のホストメモリが使用されます。

消費されるメモリの量は、シミュレートされたセッション (ユーザーセッション) の数の影響を受けます。最小要件は4GBです。

* 標準デプロイメント (コネクターあたり8~10台のデバイス) の場合は少なくとも8GB、大規模なデプロイメント (12~25台のデバイス) の場合は16GB以上をお勧めします。

コネクターのガイドラインはサーバーの場合と同じです。

デバイスへのリモートアクセスはCPUの消費量を増加させるため、考慮する必要があります。コネクターハードウェアは、モバイルデバイス上で予想される同時セッションに応じて計画する必要があります。Windows、Linux、Macコネクター間では若干異なります。経験則では、各リモートデバイスセッションにCPUコアの半分を割り当てます。

コネクター上のディスク領域の使用量は、生成されるログの数やコネクターにキャッシュされるアプリケーションファイルの数など、さまざまな要因によって異なります。

少なくとも10GBをお勧めします。

トップに戻る

ネットワーク要件

OpenText Functional Testing Labは、簡単なネットワーク要件を提供します。詳細については、アーキテクチャーを参照してください。

ネットワーク遅延

OpenText Functional Testing Labは、HTTP/Sプロトコルを介したREST API通信を使用することにより、ネットワーク (WAN) 上の復元性を実現するように設計されています。ただし、WebSocketプロトコルを利用する通信チャネルもあります。このプロトコルを介した通信には、考慮する必要があるいくつかの制限が存在する場合があります。一般に、ネットワーク遅延が100ミリ秒未満であれば、ラボサーバーとコネクターがパブリックインターネット、MPLS、VPN、またはその他の方法を使用している場合に通信の問題が発生する可能性は低くなります。遅延が200ミリ秒を超えると、接続の問題が発生します。リモートビューでデバイスを操作するには、1Mbps以上のネットワーク帯域幅を推奨します。

トップに戻る

SSL

デフォルトでは、OpenText Functional Testing Labサーバーとコネクター間の通信にSSL構成が使用されます。これは、インストール中に自己署名SSL証明書を生成することによって実現されます。

運用環境で使用する場合は、CA証明書 (自己署名ではなく証明機関によって発行された証明書) を使用することを強くお勧めします。これにより、ブラウザーのセキュリティ警告が削除され、テストツールの接続が合理化されます。また、クライアントマシンでの認識の問題を回避するために、CA証明書をCAルート証明書と併用することをお勧めします。詳細については、SSLと証明書を参照してください。

SSLの使用は、IPSまたはその他のセキュリティゲートウェイによる内部セキュリティのブロックを排除するため、ネットワークの観点からも有益です。

トップに戻る

ポート

OpenText Functional Testing Labサーバー (Webフロントエンド) は単一のポートを使用します。ポートは、サーバーのインストール中に構成されます。コネクターは、OpenText Functional Testing Labサーバーおよびエンドユーザー (クライアント) との接続に単一のポートも使用します。内部的には、コネクターはリバースプロキシ (Nginx) を利用して、関連するモバイルデバイスにリクエストをルーティングします。したがって、ネットワークの観点からは、サーバーとコネクターに対して1つのポートがアクセス可能 (入力) である必要があります。

使用されるプロトコルに関しては、HTTP/HTTPSおよびWebSocket/WebSocket Secure (WS/WSS) プロトコルの要件があります。

トップに戻る

クライアントツールの接続

一般的なクライアントツールは、OpenText Functional TestingOpenText Enterprise Performance Engineering、Sprinter、BPM、OpenText Functional Testing for Developers、およびAppiumスクリプトです。

テストツールクライアントは、次の目的でOpenText Functional Testing Labサーバーに接続します。

  • HTTP/HTTPSを介してデバイスを管理し、アプリをアップロードするためのユーザーインターフェイス (UI)。

  • テストと管理のためのAPI (JSONコマンド)。WebSocket (WS/WSS) を介して送信されます。

  • WebSocket (WS/WSS) 経由で送信されるリモートスクリーンビューアークライアント

トップに戻る

USBハブとデバイスの消費電力

OpenText Functional Testing Labでデバイスを使用する場合は、同期と充電が必要です。USBポートの数は限られていることが多く、各ポートからの電力が特定のデバイスには不十分な場合があるため、電源付きのUSBハブを使用してデバイスを接続します。

ハブは、すべてのポートに対して同時にポートあたり5V/2.1Aの最小電力出力を提供し、BC 1.2規格に準拠している必要があります。

ハブは、ハブ用に認定されたケーブルを使用してマシンに接続し、デバイスは元のケーブルを使用してハブに接続する必要があります。

OpenTextでは次のモデルを推奨しています。

  • Cambrionix SuperSync15。

  • Tripp Lite 16ポートUSB充電ステーション (同期機能付き、200W)。

  • Tripp Lite マルチデバイス充電ステーション、48 USBポート (600W)。

トップに戻る

デバイスホスティング

モバイルデバイスは常に電源に接続されています。この構成の熱と影響を軽減するには、次のことをお勧めします。

• デバイスを不燃性の換気の良い筐体に置く。

• エンクロージャーに追加の換気を提供する。

これらの要件を満たすために役立つソリューションが多数用意されています。例:

  • ラックマウント設置用のデバイスビーム

  • ラックマウント設置用の追加ファンパネル

  • 1U 16ポートUSB電源ハブ

  • 16デバイスUSB充電ステーションキャビネット

デバイスのホスティングに関するその他のベストプラクティスについては、デバイスの接続を参照してください。

トップに戻る

デバイス構成

デバイスの構成を支援するには、デバイスをOpenText Functional Testing Labに接続するときに次の点を確認してください。

領域 詳細
一般
  • デバイスにパスコードが設定されていない

  • デバイスにGoogle Playアカウント/Apple Storeアカウントが設定されていない

  • Wi-Fiに接続されているデバイス

  • デバイスの画面の明るさを最小にする

  • デバイスの壁紙をモノクロ、静的に設定する

Androidデバイス
  • デバイスのロックオプションを無効にする
  • 開発者向けオプションを有効にする ([設定] → [デバイス情報] → [ビルド番号] を7回クリック)
  • 開発者向けオプションでStay Awakeオプションを有効にする
  • 開発者向けオプションで [USBデバッグ] オプションを有効にする
  • Android 8.0以降で実行されるSamsungデバイスでは、
  • バッテリーセーバーメニューの監視対象外のアプリケーションにOpenText Functional Testing Labエージェントを必ず追加してください。
  • 自動更新とパッチのインストールをオフにする
    Androidデバイスでの自動アップグレードを回避するには:
    [設定] > [システム] > [デバイス情報] > [ソフトウェアアップデート] で、自動アップデートを無効にします。
iOS (Apple) デバイス
  • デバイスのUDIDをコピーする (エージェントの再署名に必要)
  • デバイスのロックオプションを無効にする
  • デバイスがiOS 13以降で実行されている場合は、自動ロックを30秒に設定する
  • [設定] > [Safari] > [詳細] でJavaScriptとWeb Inspectorを有効にする。
  • UIオートメーションオプションを有効にする (OpenText Functional Testing Labに最初に接続した後、オプションは設定に表示されます)
  • iOSの自動アップデートを無効にする ([設定] > [一般] > [ソフトウェアアップデート])

iOSデバイスでの自動アップグレードを回避するには:

1. [設定] をタップします。

2. [一般] をタップします。

3. [ソフトウェアアップデート] セクションで、[自動アップデート] オプションをオフにします。

以前にダウンロードしたiOSアップデートを削除するには、次の手順を実行します。

  1. [設定] アプリを開きます。

  2. [一般] をタップします。

  3. [iPhone/iPadストレージ] をタップします。

  4. アプリのリストとそれらが使用するストレージの量が表示されるまで、少し下にスクロールします。iOSアップデートを探します。

  5. アップデートをタップして詳細を表示し、[アップデートを削除] を選択します。

  6. [アップデートを削除] をタップして確定します。

Wi-Fiルーターで次のドメインをブロックすることで、iOSの自動更新をブロックすることもできます。

  • appldnld.apple.com

  • mesu.apple.com

追加の考慮事項:

  • システムダイアログの自動終了。詳しくはiOSオプションを参照してください。

  • デバイスロックの自動防止。詳しくはiOSオプションを参照してください。

その他の管理者のベストプラクティス

ラボのメンテナンス操作、監視、アップグレード、パッケージングサービスのベストプラクティスについては、その他の管理者のベストプラクティスを参照してください。

トップに戻る