Ranorex：痒い所に手が届く、オートメーションヘルパー 機能

UIテスト自動化ツールの[***Ranorex***](https://ranorex.techmatrix.jp/ "Ranorex Home")には、オートメーションヘルパーという機能があり、コードベースのメソッドやモジュールのコレクションをパッケージ化したものが提供されています。

このコレクションでは、特殊なアプリ画面操作や、その他テスト自動化をアシストするためのモジュールなどが提供されています。これらのコレクションを使用することで、通常はコーディングスキルが必要な処理をノーコードでテストに使用することができます。

#### 主なコレクション
* ***DragAndDrop***
  ドラッグアンドドロップ操作をおこなうためのメソッド<br><br>

* ***PopupWatcher***
  画面操作時における予期せぬポップアップ（確認や警告ダイアログなど）を操作するためのメソッド<br><br>

* ***ValidateFilesBinaryEqual***
  バイナリファイル（PDFファイルなど）を比較するためメソッド<br><br>

* ***EmailModule***
  テスト結果レポートをメール送信するためのモジュール<br><br>

※他のコレクションについては[***コチラ***](https://ranorex.techmatrix.jp/blog/2019/09/13/method-list-for-automation-helpers/ "Automation Helpersによる提供モジュール/メソッド内容のご紹介")を参照ください。

### ■ 利用方法
オートメーションヘルパーのパッケージは、Microsoft社のNuGetで管理されており、NuGetからパッケージを追加することで使用できるようになります。

<img width="700" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/c5abfc34-752c-483d-a680-0f0040e6035f.png"><br>

具体的な手順は以下の通りです。
#### オートメーションヘルパーの設定
<details>
  <summary>設定手順</summary>
  
1. Ranorex Studioにてソリューションを開きます。<br><br>
1. ***プロジェクト***ビューにある、テストスイート名の右クリックメニューから「***オートメーションヘルパー***」-「***オートメーションヘルパーの追加***」を選択します。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/190b9850-3ae8-4832-b054-fb23987acf81.png"><br><br>
1. 表示される***オートメーションヘルパーの追加***画面にて、「***オートメーションヘルパーの追加***」をクリックします。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/fe6f68dd-0a34-4f8e-91c5-ad0c2451a08b.png"><br><br>
1. 画面上に***オートメーションヘルパーの追加に成功しました***が表示されことを確認後、「***閉じる***」をクリックします。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/56e17e92-2233-4a13-b2a4-4922c1146868.png"><br><br>
1. ***プロジェクト***ビューにオートメーションヘルパーのパッケージ（プロジェクト）が追加されます。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/6d6eb896-7826-4a3c-9c72-fb05cadbff0e.png"><br><br>
</details>

#### オートメーションヘルパーのメソッドの使用
<details>
  <summary>設定手順</summary>
  
1. Ranorex Studioにてレコーディングモジュールを開きます。<br><br>
1. 「***新しいアクションの追加***」-「***ユーザーコード（User code）***」-「***ライブラリから選択***」を選択します。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/b46d22c9-6f3c-45d5-8325-d5a7e5c473e2.png"><br><br>
1. 表示される***ライブラリの選択***画面にて、使用したいオートメーションヘルパーのメソッドを選択し、「***選択項目の追加***」をクリックします。<br><img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/e3d67627-5772-4513-ae1a-8997fc73e531.png"><br><br>
1. レコーディングモジュール内にメソッドが追加されます。メソッドのアクションに対して必要なパラメーターを設定することで利用できます。<br><img width="600" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/20e6cce5-35ef-47a2-86cf-90752fd19975.png"><br><br>
</details>

#### オートメーションヘルパーのモジュールの使用
<details>
  <summary>設定手順</summary>
  
1. Ranorex Studioにてテストスイートを開きます。<br><br>
1. ***モジュールブラウザー***ビューに、オートメーションヘルパーのモジュールが表示されるため、使用したいモジュールをテストスイート配下に配置します。（モジュールをドラッグ アンド ドロップすることで配置できます）<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/14f0752e-fe65-4701-9395-939e3c610eb5.png"><br><br>
1. 配置したモジュールの右クリックメニューから「***データバインディング***」を選択します。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/b0ad9bdb-c799-4974-8332-fa2503ebb3fb.png"><br><br>
1. 表示され***プロパティ***画面の「***グローバルパラメーター***」タブにて、「***自動生成***」、「***自動バインド***」の順にクリックします。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/1eafd8a1-15b8-494d-a0e4-71a0b79de1ae.png"><br><br>
1. 生成されたパラメーター（"***Value***"項目）に対して、必要な情報を設定後、「***適用***」、「***OK***」の順にクリックします。<br><img width="500" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3826232/724d925a-ab39-46c9-8964-5d227375fc7e.png">
</details>

※オートメーションヘルパーのメソッド、モジュールで設定するパラメーターは、Ranorexの[***ユーザーガイド***](https://support.ranorex.com/hc/en-us/articles/22489815205021-Automation-Helpers-introduction)または、国内向けRanorexの[***Blog記事***](https://ranorex.techmatrix.jp/blog/2019/09/13/method-list-for-automation-helpers/)からダウンロードできる一覧表で確認できます。


## ■ 国内向けのオートメーションヘルパー
販売元のテクマトリックス社から、国内のRanorexユーザー様のリクエストを元にしたユーザーコードをオートメーションヘルパーがリリースされています。詳細はテクマトリックス社が運用しているRanorexのBlog記事で公開されています。

***Blog記事：***[***Ranorex オートメーションヘルパーの新たな機能をリリース！***](https://ranorex.techmatrix.jp/blog/2025/01/31/ranorex_automation_helpers_v1-0_release/)