トラブルシューティング と FAQ
この章では、リモート テストに関するトラブルシューティングと FAQ について説明します。
リモート テストのシステム要件
リモート テストを実行したいマシンは、使用する Ranorex Studio のバージョンに対応した ⇢ システム要件 を満たしている必要があります。
ただし、ソフトウェア要件については、ターゲット システムへの .NET Framework のインストールだけで十分です。
メモ
Excel data connector を使用したデータ駆動型テストをデプロイしようとしていて、かつ、リモート マシンで Excel ライセンスを使用したくない場合には、⇢ データ駆動型テストの実行 を参照してください。
Ranorex Agent のファイアウォール設定
Ranorex Agent を実行するマシンで、TCP ポート 8081 および UDP ポート 10000-10001 へのアクセスを許可するよう、ファイアウォールを設定する必要があります。
トラブルシューティング
Agent が見つからない/正しく動作しない
- Ranorex Studio を実行しているマシンと、Agent を実行しているマシンが、同じネットワーク (サブネット) にあることを確認してください。
- Agent が、アクティブなユーザー セッションで実行されていることを確認してください。Agent の実行中は、ユーザーがログオフした状態にしないでください。
- リモート マシンで、TCP 8081 および UDP 10000-10001 が開放されていることを確認してください。
- Agent を実行しているマシンの Windows イベント ログを確認し、Agent に関するログが出力されていないか確認してください。
FAQ
仮想マシンに Ranorex Agent をインストールできますか?
可能です。上述のシステム要件を満たしていることを確認してください。
仮想マシンは低速であることが多いため、⇢ レコーダーの設定 から、各種タイムアウトの設定を調整する必要があるかもしれません。調整値は、ネットワーク環境に依存するため、推奨値をここで説明することはできません。
1 つの Windows 上に複数の Ranorex Agent をインストールできますか?
いいえ。1 つの Windows にインストールできる Ranorex Agent は 1 つだけです。
テスト実行ビルドをリモート実行するにはどのライセンス タイプが必要ですか?
少なくとも 1 つの Runtime フローティング ライセンスが必要です。Agent でのテスト実行時に、Ranorex Floating License Manager から Runtime フローティング ライセンスをリースするために、テスト実行ビルドに、⇢ ライセンス設定情報を追加 する必要があります。
ライセンスを保有していない場合、リモート マシンでテストを実行するために、30 日間有効な Ranorex Studio の評価版をインストールすることもできます。しかしこの場合、テスト実行のたびに、評価ライセンスの確認ダイアログを手動で操作する必要があります。
Ranorex Agent でリモート テストを実行するには、何個のライセンスが必要ですか?
Agent は、テスト実行時に、1 つの Runtime フローティング ライセンスを使用します。テストを実行していない待機状態の時には、ライセンスは使用しません。
NAT の問題を解決するには
Ranorex Studio のマシンと Ranorex Agent のマシンがそれぞれ異なるネットワークに接続している場合、この Ranorex Agent はエージェント リストに自動的に表示されない可能性があります。また、IP アドレスを使って手動で追加できない可能性もあります。デフォルトでは、マシンは自身のネットワーク外のマシンに接続するためのルーティング情報を持ちません。
この問題を解決するには、ネットワーク ルートを、ネットワーク間のゲートウェイで設定するか、各マシン上で設定する必要があります。
以下はその例です。
この図の例のネットワークは 192.168.x.x で始まります。一方のゲートウェイは 192.168.2.1 (右側) であり、もう一方は 192.168.3.1 (左側) です。どちらのゲートウェイもサブネット 192.168.1.x (中央) を共有します。このサブネットはゲートウェイ 192.168.1.1 (中央上部) を持ち、インターネットに接続しています。
ゲートウェイ 192.168.3.1 のネットワークには 2 台のコンピューターがあり、そのうちの 1 台では 3 個の仮想マシン (VM) が実行中です。VM の IP アドレスは 192.168.3.x です。
192.168.2.1 のネットワークにはルーターが 1 台とコンピューターが 2 台だけあります。コンピューターの IP アドレスは 192.168.2.x です。
ゲートウェイ間のルートの有効化
コンピューター 192.168.3.6 (VM C) から 192.168.2.2 (PC 2) を ping すると、ゲートウェイ間で適切なルートを有効にしていない限り、リクエストはタイムアウトします。ここで、192.168.3.6 (VM C) が Windows 7 を実行していて、192.168.3.6 (VM C) で以下のどちらかのコマンドを入力するとします。
- route add 192.168.2.0 mask 255.255.255.0 192.168.1.2 metric 2
(ネットワーク全体をルート テーブルに追加)
or - route add 192.168.2.2 mask 255.255.255.0 192.168.1.2 metric 2
(1 台のコンピューターをルート テーブルに追加)
コマンドを入力した後、ping は 192.168.3.6 (VM C) から 192.168.2.2 (PC 2) に通ります。しかし、192.168.2.2 (PC 2) は 192.168.3.6 (VM C) に ping できません。2 つのネットワーク間での通信を可能にする回避策は 2 つあります。
- ゲートウェイでルートをセットアップする
- ネットワークをまたがって通信する必要があるマシン上でルートをセットアップする
ルートをセットアップするときは、ゲートウェイ ファイアウォールを考慮してください。なぜなら、マシンからのクロス トラフィックをブロックする可能性があるからです。その場合は、代わりにゲートウェイでルートをセットアップするために、またはトラフィックがファイアウォールを通過できるようポート フォワーディングをセットアップするために、ネットワーク管理者権限が必要です。
企業のインターネット ファイアウォールの背後にあるほとんどのゲートウェイはブリッジとして機能するため、ローカル ネットワーク上でファイアウォールで保護される内部トラフィックはあまり多くありません。接続がファイアウォールで保護されているかどうかをチェックするには、’tracert 192.168.2.2′ を試してください。IP アドレスではなくアスタリスク ‘*’ が ‘trace route’ に表示される場合、接続はファイアウォールを通過したか、あるいは誤ってインターネットに向けられています。
メモ
この例では、標準的なサブネット 255.255.255.0 を使用しています。ゲートウェイのいずれかの側でサブネットを承認するか、または必要に応じてルート セットアップ コマンドを変更する必要があります。
ルート メトリック (コマンドの最後の数字) はルートに割り当てられ、その優先度を識別するために使用されます。1 が最も高い優先度です。通常、ネットワーク管理者はルート中のホップ数に基づいてルート メトリックを決定します。なぜなら、多くの場合、最もホップ数が少ないルートが最も良いからです。この例のルートは 2 つのホップを持つため、ルート メトリックは 2 です。
route コマンドは、引数 ‘-p’ を指定した場合にだけ永続化 (再起動の後も継続) されます。したがって、事前にリスクなく route コマンドを簡単に試すことができます。route コマンドを取り消したい場合は、再起動するだけです。正しいルートを発見したら、再起動後に route コマンドを永続化できます。
リモート デスクトップ プロトコル (RDP) 経由でのテストのガイドライン
RDP 接続経由で、リモートでテストをおこなうことができますが、いくつかの制限事項があります。
RDP 経由でのテストの実行
RDP を使用しない場合と同じように、RDP 経由でも、リモート マシンでテスト実行ビルドを実行できます。この手順は、以前に説明したものと同じです。
RDP 経由でのテストのレコーディング
RDP 経由で、Ranorex Studio でテストをレコーディングすることはできません。
RDP ウィンドウでは、Ranorex Studio や他のテスト自動化ツールが、通常どおりに UI 要素を識別できないためです。RDP ウィンドウ全体が識別されます。
RDP ウィンドウにある Demo Application 上での Submit ボタンのクリック
Submit ボタンではなく、RDP ウィンドウ全体を識別しているリポジトリ アイテム
スタンバイ
リモート マシンがスタンバイ モードに切り替わると、ネットワークから切断されます。これによって RDP 接続が切断され、現在実行中のテストが失敗します。
RDP 経由でテストを実行したい場合には、リモート マシンでスタンバイ モードを無効にしてください。
リモート マシンへの他者のアクセス
RDP 経由でリモート マシンに接続すると、他のユーザーはロックされ、セッションの引き渡しに同意しない限り、他ユーザーがリモート アクセスすることはできません。しかしながら、他ユーザーがこのマシンに直接ログインすることはできます。これにより、RDP 接続が自動的に中断され、現在実行中のテストが失敗します。
リモート デスクトップ接続を閉じたあともユーザー セッションをキープする
RDP 経由でリモート マシンに接続し、テストのデプロイおよび開始をおこない、その後リモート セッションを切断すると、テストは失敗します。これは、ユーザー セッションが終了されるためです。
RDP セッションを切断しても、現在のユーザー セッションはアクティブにキープするには、以下の手順をおこないます。
リモート マシン上にバッチ ファイルを作成し、以下のコードを挿入します。
for /f "skip=1 tokens=3 usebackq" %%s in ( `query user %username%` ) do ( %windir%\\System32\\tscon.exe %%s /dest:console )
リモート マシンのデスクトップにこのバッチ ファイルを KeepSessionOpen.bat という名前で保存します。
RDP セッションを切断する必要がある場合、管理者権限でこのバッチ ファイルを実行することで、リモート マシンをロック解除状態に保つことができます。
メモ
- この設定により、リモート マシンでの重要なセキュリティ機能が無効化された状態になります。この機能を使用する場合には、リモート マシンに機密情報を格納しないことをおすすめします。
- テスト実行中に RDP セッションを切断すると、リモート マシンの画面解像度が変更される場合があります。これにより、テストが失敗する可能性があります。