リモート環境でのテスト実行~画面ロック中でもセッションを有効にする方法~

UIテストの⾃動化では、テストの実行をリモート環境でおこないたいというケースもあります。
このようなテストでは、一般的には、テスト実行環境において、常にユーザーセッションが維持された状態である必要があります。
しかしながら実際には、画⾯ロックやスクリーンセーバーの設定によってユーザーセッションが維持できないケースが多く、また、社内セキュリティ上、画⾯ロックやスクリーンセーバーの設定を無効とすることが難しいこともあります。

本記事では、UIテスト自動化ツールであるRanorexを使用した場合、画⾯ロックやスクリーンセーバーの設定を無効とせずに、テストを実⾏するための対応策について紹介します。

対応策① Ranorex Agent を使用する

Ranorex Agentとは、テスト作成環境で作成したテストシナリオを、リモート環境上で実⾏させるためのスタンドアローンツールです。
使い方として、リモート先のテスト実行環境に Ranorex Agent をインストールしてサービスとして常駐させます。
テスト実行環境にあるRanorex Agentに対して、テストの実⾏指⽰をおこなうことにより、テスト実⾏モジュール(exe)や動作に必要となるファイル⼀式がテスト実行環境に⾃動でコピーされ、テストが実⾏されます。

テストの実行指示は、Ranorex Studioおよび、コマンドラインにておこなうことができます。

Ranorex Agentには、リモートデスクトップ接続が切断された場合でも、Windowsのユーザーセッションをキープするためのオプションがあります。

Ranorex Agentの設定画面から、セッションのキープ 設定を有効にすることで、セッションをキープすることができます。
※本オプションは、デフォルト設定で有効になっております。

Ranorex Agentについては、以下のユーザーガイドをご参照ください。
・Ranorex Agent
https://www.ranorex.com/ja/help/latest/ranorex-studio-expert/runtime-and-remote-execution/ranorex-agents/

対応策② ユーザーセッションを維持するバッチファイルを使用する

テスト実行環境上で、ユーザーセッションをキープするためのバッチファイルを実行することで、リモートデスクトップ接続を切断した後も、リモートデスクトップのセッションを開いた状態にし、テストを実行することが可能となります。

詳細な手順は、以下のユーザーガイドをご参照ください。
・トラブルシューティングと FAQ – リモート デスクトップ接続を閉じたあともユーザー セッションをキープする
https://www.ranorex.com/ja/help/latest/ranorex-studio-expert/runtime-and-remote-execution/troubleshooting-and-faq/

※対応策①②では、いずれもセッションのキープが必要となるため、社内セキュリティー上の問題ないかや、リモート環境上のマシンにて管理者権限が必要であるといった制限がございます。

まとめ

今回ご紹介した対応策により、画面ロックやスクリーンセーバーの設定を無効としなくとも、リモート環境上でRanorexのテストを実行することができます。
テスト実行中に画面ロックやスクリーンセーバーを無効とすることが難しい場合には、ぜひ上記の対応策をお試しください。

関連記事

リモート環境でのテスト実行に関しては、以下のBlog記事で紹介しています。
・リモート環境でのテスト実行
https://ranorex.techmatrix.jp/2020/01/31/remote-testing/