FAQ

質問

ライセンス

フローティング
  1. ライセンスマネージャーが使用するポート番号は?
  2. ライセンスマネージャーのポート番号(TCP/UDP)を変更できますか?
  3. ライセンスマネージャのライセンス利用者を確認できますか?
  4. フローティングライセンスの設定時に、"Type"として選択できる"Professional"ライセンスとは何ですか?
  5. 以下のエラーが発生し、ライセンスマネージャーのサービスを開始できません。

    エラーメッセージ:
    ローカルコンピューター上の Ranorex License Manager サービスは起動して停止しました。
    サービスの中には、他のサービスやプログラムで使用されていない場合は停止するものがあります。
  6. テスト実行環境を構築し、テストを実行すると、ライセンスマネージャーでRuntimeではなく、Premiumライセンスが使用されます。
  7. ライセンスマネージャーを他のマシン環境に移行するにはどうしたら良いですか?
  8. ライセンスマネージャーにライセンスの空きがあるのに、ライセンスを使用することができません。
  9. フローティングライセンスの確保/解放のタイミングを教えてください。
  10. ライセンスマネージャーで確認できるライセンスのステータスの種類を教えてください。
ノードロック
  1. ライセンスを他のマシン環境に移行するにはどうしたら良いですか?
フローティング/ノードロック
  1. ノードロックと、フローティングのライセンスの違いは何ですか?
  2. ライセンスを他のマシンへ移行する際に制約はありますか?

Ranorexの機能(全般)

テスト作成
  1. オブジェクトに対して、テスト実行時のマウスクリック位置が座標で記録されるが、常に真ん中をクリックするよう事前に設定できますか?
  2. テスト実行時に、任意のタイミングでテスト対象アプリケーションの画面をキャプチャできますか?
  3. テスト実行時にアクションが失敗しても処理を継続するにはどうしたら良いですか?
    たとえば、バリデーション(Validation)のアクションなどで、検証に失敗した場合でも、テストを継続させたい場合など。
  4. 任意のレコーディングモジュールから、他のレコーディングモジュールを呼び出すことは可能ですか?
  5. バリデーションとして、テスト対象のアプリケーションの画面に表示される、文字の表示切れを検証できますか?
  6. イメージバリデーションの類似度の判定方法について教えてください。
  7. 1つのテストケース/スマートフォルダーで、複数データソースを使用できますか?
  8. データソースのテストデータ複数行ある場合、1行目のテストでエラーが発生すると後続(エラーが発生した以降のテストデータ)はテストされますか?
  9. 非表示部分も含めた全画面でのイメージバリデーションを検証できますか?
  10. KeySequenceアクションを使用して半角カタカナを入力できますか?
  11. 実行したアクションの結果を条件に、次に実行するアクションを分岐することができますか?
  12. イメージバリデーションにおいて、PDF文書の比較を行うことはできますか?
  13. データソースを使用し、バリデーションのnullチェックを行うことはできますか?
  14. イメージバリデーションにおいて、比較画像の任意の領域を対象外にするといった指定ができますか?
  15. イメージバリデーションにおいて、類似度を指定することはできますか?
  16. イメージバリデーションにおいて、テスト結果レポートに表示されるDifference imagesの2つの画像について教えてください。
  17. Windowsの拡張デスクトップ/ディスプレイ領域でもテストのレコーディングおよび、実行はできますか?
テスト実行
  1. テスト実行時に画面(右下)に表示される進捗ダイアログ(プログレスダイアログ)を表示させないようにすることはできますか?
  2. Ranroexのリモートテスト機能(Ranorex Agent)を利用したい場合は、テスト環境にRanorex Agentのみをインストールすれば良いですか?
  3. Runtimeライセンスを利用してテスト実行を行いたい場合、Ranorexのインストールは必要ですか?
  4. テストの実行回数を指定することはできますか?
  5. テストの実行速度を速めるための設定などはありますか?
  6. Ranorexをインストールせずにテストを実行することができますか?
  7. テスト実行時にエラーが発生しても、テストを続行させることができますか?
  8. コマンドラインインタフェースはありますか?
  9. Ranorex Agentによるリモートテストにおいて、デプロイした実行ファイルや生成されるレポートは何処に生成されますか?
  10. Ranorex Studioのエージェントの設定で、Ranorex Agentが認識されません。
レポート
  1. Ranorexがインストールされていないマシン環境でも、テスト結果レポートを閲覧できるファイル形式で出力できますか?
  2. エラーが発生した際、画面ショットが取得されレポートされるが、レポートさせない方法はありますか?
  3. テスト実行毎にレポートの出力ディレクトリを変更できますか?
  4. テスト結果レポートをPDF形式で出力できますか?
  5. 画像比較の結果をレポートに表示できますか?
  6. スクリーンショットなどの、テスト結果として出力される画像ファイルの形式を変更できますか?

対応アプリ

Windwos(デスクトップ)アプリケーション
  1. オブジェクト内で期待するプロパティ情報を取得することができません。
  2. Firefox/Chromeブラウザーのアドオンをオフラインでインストールできますか?
Webアプリケーション
  1. テスト実行時に、テストを行うWebブラウザーを変更することはできますか?
  2. Internet Explprerブラウザーのセキュリティ設定(保護モードの解除)を変更せずに、テストの作成および実行ができますか?
  3. ドロップダウンリストアイテムを認識できません。
  4. ブラウザーの画面キャプチャにおいて、スクロールキャプチャはできますか?
  5. ExcelのセルにSetValueアクションを使用して、値を入力できません。
  6. Ranorexが対応しているQtのバージョンを教えてください。
モバイルアプリケーション
  1. 【iOS】テストで使用するプロビジョニングプロファイルは、別途用意する必要がありますか?
  2. 【iOS/Android】モバイルのWebアプリケーションのテスト自動化はできますか?
  3. 【Android】Google MapなどのAPI キーを必要とするアプリケーションのインストルメント方法を教えてください。
  4. 【Android】モバイル端末でのレコーディングや、テスト実行において、アプリケーションの動作が重い/接続エラーが発生します。
  5. 【Android】任意のキーイベントを発生させることができますか?
  6. 【iOS】テストで使用するプロビジョニングファイルを教えてください。
  7. 【iOS/Android】iOSとAndroidのシナリオを共有できますか?
  8. 【Android】ネイティブアプリをインストルメントウィザードにてインストルメントし、テストの作成/実行を行ったところ、動作が重くなってしまいます。実行速度を速めることはできますか?
  9. 【Android】インストルメント時に、以下のエラーが発生します。
    "System.TimeoutException: Process did not finish within the specified timeout of ~"
  10. 【iOS】インストルメント時に、UDIDの記載がない旨のプロビジョニングファイルのエラーが発生します。
  11. 【iOS/Android】スワイプ操作には対応していますか?
  12. 【iOS/Android】マルチタッチ(ピンチイン/ピンチアウト含む)の操作を行うことはできますか?

回答

ライセンス


フローティング



1. ライセンスマネージャーが使用するポート番号は?

ライセンスマネージャーとクライアント間の通信では、通常、TCP/UDPの"7266"番が使用されます。
ポート番号を変更する場合は、FAQの「ライセンスマネージャーのポート番号(TCP/UDP)を変更できますか?」を参照ください。


2. ライセンスマネージャーのポート番号(TCP/UDP)を変更できますか?

はい、変更可能です。
ポート番号を変更する場合は、以下の手順に従い作業を行ってください。
  1. Windowsのコントールパネルより、「管理ツール」-「サービス」を開きます。
  2. 「Ranorex License Manager」を右クリックし、ショートカットメニューから「停止」を選択し、ライセンスマネージャーを停止します。
  3. 「Ranorex License Manager」を右クリックし、ショートカットメニューから「プロパティ」を選択し、プロパティ画面を表示します。
  4. 「全般」タブの「開始パラメーター」にある入力フォームに、使用するポート番号を入力します。
  5. 「全般」タブの「開始」ボタンをクリックし、ライセンスマネージャーを起動します。
  6. 「適用」、「OK」ボタンの順にクリックします。

※ 本作業の実施時には、ライセンスマネージャーが利用できませんので、ご注意ください。
※ 他のサービスなどで指定したポート番号が使用されていないことを確認してください。


3. ライセンスマネージャのライセンス利用者を確認できますか?

ライセンスマネージャーの設定画面にて確認することが可能です。
  1. Windowsの「スタート」-「プログラム」にて、「Ranorex License Manager X.x」-「Ranorex License Manager」を選択し、ライセンスマネージャーの設定画面を開きます。
  2. 設定画面の「クライアント」タブを表示することで、ライセンス(フローティングライセンス)の利用者を確認できます。
      ライセンス利用者の情報として、以下の情報を確認できます。
    • Host:Ranroexを使用しているマシンのホスト(マシン)ID
    • User:Ranroexを使用しているマシンのログインユーザ

4. フローティングライセンスの設定時に、"Type"として選択できる"Professional"ライセンスとは何ですか?


このライセンスは、テストの実行に加え、Ranorex の各種ツール (Ranroex SPY、Test Suite Runnerなど、Ranorex Studio は除く) が利用可能なライセンス(Runtime + Ranorex Tools)です。 ※現在、このライセンスの取り扱いは行っておりません。

5. 以下のエラーが発生し、ライセンスマネージャーのサービスを開始できません。

エラーメッセージ:
ローカルコンピューター上の Ranorex License Manager サービスは起動して停止しました。
サービスの中には、他のサービスやプログラムで使用されていない場合は停止するものがあります。

原因はログファイルが破損したことが考えられます。 下記2つのファイルをリネームし、Ranorex License Manager サービスを開始してください。
  • "%%programdata%%¥RanorexLicenseServer¥LicenseManager.sdf"を"_LicenseManager.sdf"にリネーム
  • "c:¥Program Files (x86)¥Ranorex License Manager X.x¥Bin¥LicenseManager.sdf"を"_LicenseManager.sdf"にリネーム

6. テスト実行環境を構築し、テストを実行すると、ライセンスマネージャーでRuntimeではなく、Premiumライセンスが使用されます。

Ranorex Studio、Recorder、SPYのツールの使用には、Premiumライセンスが必要です。
また、ライセンスの設定画面にある、"Type"にて、ライセンスの種類(Auto、Runtime、Premium)を選択できます。
なお、Runtimeライセンスを指定した状態で、Ranorex StudioなどのPremiumライセンスが必要なツールを起動しようとすると、起動できない旨のエラーメッセージが表示されます。
※ライセンスの種類にある"Auto"は、起動するツールに合わせてRanorex側が自動的に使用するライセンスを選択します。

7. ライセンスマネージャーを他のマシン環境に移行するにはどうしたら良いですか?

ライセンスの移行には、Ranorexのインストール・セットアップガイド(Ranorex_Install&Setup_vX.x.pdf)の「ライセンスのセットアップ」‐「ライセンスの移動」‐「フローティングライセンスの場合」を参照ください。
※Ranorexのインストール・セットアップガイドは、Ranorexのユーザページにございます。(ユーザページのURLは、Ranorexをご導入いただいた際に、お送りした登録カードに記載してあります)
※インターネット接続がない環境で、ライセンスの移動作業を実施する場合は、Ranorexカスタマーサポート(ranorex-info@techmatrix.co.jp)に、事前にご連絡ください。
※インターネット接続がある環境において、認証が必要なプロキシサーバーを使用されている場合は、Ranorexカスタマーサポート(ranorex-info@techmatrix.co.jp)に、事前にご連絡ください。

8. ライセンスマネージャーにライセンスの空きがあるのに、ライセンスを使用することができません。

原因として、保守サービス期間が終了している、古いライセンスを使用していることが考えられます。
Ranorexのライセンスでは、保守サービスの加入期間中にリリースされた、新しいバージョンのRanorexを利用できます。
しかしながら、保守サービス期間を過ぎた後にリリースされたバージョンは使用することができません。保守サービスを更新いただく必要があります。
Ranorexの保守サービス更新の際に、新しいライセンスキーをお送りしていますので、現在ご利用のライセンスを、新しいライセンスキーで更新ください。

9. フローティングライセンスの確保/解放のタイミングを教えてください。

Ranorexの各ツール(Ranorex Studio、Ranorex Test Suite Runnerなど)では、ツールの起動/終了にともない、ライセンスが確保/解放されます。
また、コマンドラインによるテスト実行においては、テストの実行/終了にともない、ライセンスが確保/解放されます。
※Ranorex Agent(リモートテスト機能)を使用する場合は、Ranorex Agentの起動/終了時において、ライセンスが確保/解放されます。
以下「Ranorex User Guide」より:
リモート テストを実行するには、Ranorex Runtime ライセンスが必要です。
Ranorex Agent を起動すると、ネットワークにインストールされたライセンス マネージャーからライセンスが自動的に取得されます。
Ranorex Agent をシャットダウンすると、ライセンスは解放されます。

10. ライセンスマネージャーで確認できるライセンスのステータスの種類を教えてください。

ライセンスには、以下のステータスが存在します。
  • Free:ライセンスが使われていない状態。
  • Leased:ライセンスがユーザーに貸し出されている状態。
  • Locked:ライセンスがロックされている状態。この状態から5分後にFree状態に移行。
  • ※Lockedは、以下の状況において発生します。
  1. ユーザー(クライアント)がライセンスを使用します。
  2. ライセンスマネージャーとクライアント間で通信がきない状態で、クライアント側でライセンスを解放(Ranorexを終了)します。この時点では、ステータスはLeasedのままとなります。
  3. ライセンスマネージャーとクライアント間で通信ができる状態になった時点で、LeasedからLockedに移行します。
  4. Lockedは5分後にFreeに移行します。

ノードロック

1. ライセンスを他のマシン環境に移行するにはどうしたら良いですか?

ライセンスの移行には、Ranorexのインストール・セットアップガイド(Ranorex_Install&Setup_vX.x.pdf)の「ライセンスのセットアップ」‐「ライセンスの移動」‐「ノードロックライセンスの場合」を参照ください。
※Ranorexのインストール・セットアップガイドは、Ranorexのユーザページにございます。(ユーザページのURLは、Ranorexをご導入いただいた際に、お送りした登録カードに記載してあります)
※インターネット接続がない環境で、ライセンスの移動作業を実施する場合は、Ranorexカスタマーサポート(ranorex-info@techmatrix.co.jp)に、事前にご連絡ください。
※インターネット接続がある環境において、認証が必要なプロキシサーバーを使用されている場合は、Ranorexカスタマーサポート(ranorex-info@techmatrix.co.jp)に、事前にご連絡ください。

フローティング/ノードロック

1. ノードロックと、フローティングのライセンスの違いは何ですか?

  • ノードロックライセンス
    固定のマシンに割り当てられるライセンスです。
    ライセンスを登録したマシン環境でのみ、Ranorexを使用することが可能となります。
    仮想環境(VirtualBoxなどの仮想マシン)・クラウド・ターミナルサーバー環境などでは利用できません。
  • フローティングライセンス
    License Manager(ライセンス管理サーバー)にて、管理されるライセンスです。
    Ranorexを使用する場合、License Managerに接続し、ライセンスを取得します。(Ranorexを使用するマシンは固定されません)
    Ranorexは、プライベートネットワーク内の物理的/仮想的なインスタンス(VirtualBoxなどの仮想マシン環境)に無制限にインストールできます。
    また、同時に利用できるインスタンス数やユーザ数は購入した同時利用ユーザ数によって制限されます。

2. ライセンスを他のマシンへ移行する際に制約はありますか?

ノードロックおよび、フローティングライセンスともに、移行後、90日間は、他のマシンへの移行ができなくなります。(※90日後、ライセンスが移行できるようになります。)
また、保守サービスが終了しているライセンスは移行を行えません。

Ranorexの機能(全般)

テスト作成

1. オブジェクトに対して、テスト実行時のマウスクリック位置が座標で記録されるが、常に真ん中をクリックするよう事前に設定できますか?

Ranorexの「設定」メニューにある、「レコーダーの初期設定」タブにおいて、
「レコーディング」-「レコーディング時の座標モード」を "None" に設定することで対応できます。


2. テスト実行時に、任意のタイミングでテスト対象アプリケーションの画面をキャプチャできますか?

画面キャプチャ用のアクション(Capture Screenshot)を使用することで対応できます。
  1. レコーディングモジュールを開きます。
  2. リポジトリアイテムから、対象オブジェクトをアクションテーブルの画面キャプチャを行いたい箇所にドラッグアンドドロップします。
    ※アプリケーションの画面全体をキャプチャしたい場合は、最上位のフォルダ(アプリケーションフォルダ)を指定します。
  3. 表示されるアクションのメニュー一覧から、「スクリーンショットのキャプチャ」を選択します。


3. テスト実行時にアクションが失敗しても処理を継続するにはどうしたら良いですか?
たとえば、バリデーション(Validation)のアクションなどで、検証に失敗した場合でも、テストを継続させたい場合など。

以下の方法で対応可能です。
  • レコーディングモジュールのアクション毎のエラー
    対象のアクションを右クリックし、ショートカットメニューから「失敗時に処理を続行」を選択します。
  • テストケース毎のエラー
    対象のテストケースを右クリックし、ショートカットメニューの「エラー処理」から以下を選択します。
    • 次の繰り返しに移動して実行
      次のテストに移行してテストを続行します。(データ駆動などにより、複数回テストを実行する場合に、すべてのテストを実行します)
    • 次のテストケースに移動して実行
      対象のテストケースのテストを終了し、次のテストケースのテストを実行します。
    • 次の親テストケースに移動して実行
      対象のテストケースのテストを終了し、次の親のフォルダーにあるテストケースのテストを実行します。
      同じ階層にあるテストケースはスキップされます。
    • 停止
      テストを終了します。


4. 任意のレコーディングモジュールから、他のレコーディングモジュールを呼び出すことは可能ですか?


ユーザーコードを使用することで可能です。

コード例:
TestModuleRunner.Run(new Recording1());

※Ranorex APIにつきましては、APIドキュメント(Ranorex Sudioの「ヘルプ」メニュー)をご参照ください。

上記のコードを使用することで、レコーディングモジュールや、コードモジュールからの呼出しが可能です。
しかし、テストの流れが分かりにくくなるため、お勧めしておりません。なるべく、モジュールを分けるなどして対応いただくことをお勧めします。

詳細については、以下のRanorexユーザガイドを参照ください。
ユーザー コード:https://www.ranorex.com/help/v7.2/ja/lesson-5-ranorex-recorder/user-code-actions
コードモジュール:https://www.ranorex.com/help/v7.2/ja/lesson-7-code-modules

5. バリデーションとして、テスト対象のアプリケーションの画面に表示される、文字の表示切れを検証できますか?


文字の表示切れについては、属性値としてのバリデーションを行うことはできません。
画像比較(期待値とする表示画像とのCompareImage)によるバリデーションまたは、テスト実行時に取得したスクリーンショットを目視でチェックする方法で対応いただく形になります。

6. イメージバリデーションの類似度の判定方法について教えてください。

対象の画像のすべてのピクセルの対して、RGB値を比較します。
類似度(Similality)は、各ピクセル値の平均二乗誤差の和で計算されます。
例えば、10x10 サイズで、ただ一つのピクセルを除き、他のすべてのピクセル値が同じ2つの画像を比較する場合を考えます。
この異なるピクセルが、画像AではRGB(255,255,255)、画像BではRGB(0,0,0)の場合、この2つの画像の類似度(Similality)は「99%」となります。
この異なるピクセルが、画像AではRGB(128,128,128)、画像BではRGB(0,0,0)の場合、この2つの画像の類似度(Similality)は「99.75%」となります。

7. 1つのテストケース/スマートフォルダーで、複数データソースを使用できますか?

いいえ、できません。
1つのテストスイートに、複数データソースを「登録」することはできますが、1つのテストケース/スマートフォルダーには、1つのデータソースのみが使用できます。
複数データソースを使用したい場合は、テストケース/スマートフォルダーを分割する必要があります。
また、バインドするデータソースを変数化などにより動的に指定することはできません。
他の方法として、データソース機能を使用せず、ユーザーコード(C#、VB.NETによるコーディング)で、一連のテストシナリオとデータ処理を記述する方法があります。

8. データソースのテストデータ複数行ある場合、1行目のテストでエラーが発生すると後続(エラーが発生した以降のテストデータ)はテストされますか?

データソースを使用しているテストケース/スマートフォルダーのエラー処理設定に依存します。
テストケース/スマートフォルダーを右クリックし、ショートカットメニューから「次の繰り返しに移動して実行」を選択することにより、次のデータを使用してテストが継続されます。

9. 非表示部分も含めた全画面でのイメージバリデーションを検証できますか?

いいえ、できません。
イメージバリデーションでは、表示されている範囲のみが検証の対象となります。

10. KeySequenceアクションを使用して半角カタカナを入力できますか?

はい、可能です。
以下の対応を行うことで対応できます。

KeySequenceアクションは、キーボードにマッピングしたキーコードをシミュレートします。
そのため、通常、半角カタカナを入力しようとすると、対応するキーボードの英数字が入力されます。
対応方法として、ソースコード内でKeyboard.CharacterMappingEnabled=falseを設定することにより、キーボードにマッピングしたキーコードが送られなくなり、半角カタカナの入力が可能となります。
また、他の対応方法として、KeySequenceアクションの代わりにSetValueアクションを利用することも可能です。

Keyboard.CharacterMappingEnabled=falseを使用した対応方法については、以下の手順で設定を行ってください。
  1. Ranorex Studoにて、「プロジェクト」ビューからProgram.csファイルを開きます。
  2. Mainメソッド内に、Keyboard.CharacterMappingEnabled=falseのコードを記述します。
    コード記述例(Ranorex v8.3.1のProgram.csファイル):
    ----
    public static int Main(string[] args)
    {
     // Uncomment the following 2 lines if you want to automate Windows apps
     // by starting the test executable directly
     // if (Util.IsRestartRequiredForWinAppAccess)
     // return Util.RestartWithUiAccess();

     Keyboard.CharacterMappingEnabled = false;
    ----
  3. 対象のKeySequenceアクションにて、入力したい半角カタカナの文字列を指定します。
※Program.csのソースファイルに記述することでテストの実行開始時に、この設定が有効となります。
また、特定のレコーディングモジュールだけでこの設定を有効にしたい場合は、ユーザコード(User Code)アクションを使用ください。

11. 実行したアクションの結果を条件に、次に実行するアクションを分岐することができますか?

アクションテーブルでの条件分岐による編集はできませんが、ユーザーコードを使用することで対応できます。
なお、Ranorex バージョン7以降では、テストケース/スマートフォルダー単位での条件分岐による処理が可能になりました。
テストケース/スマートフォルダー単位での条件分岐については、以下のRanorex Blogをご参照ください。
http://ranorex-jp.blogspot.com/2018/01/ranorex-v72.html

12. イメージバリデーションにおいて、PDF文書の比較を行うことはできますか?

PDFのビューアで表示された画面全体を1つのオブジェクトとして認識されるため、画面内の個々の文書や画像を比較することができません。
方法としては、外部ツールを利用することで対応できる可能性があります。
例として、DiffPDFというツールは、文書内、文書の見た目を比較して差分を表示します。
ツール内に何カ所の差異が検出されたかを表示する領域があるため、これをRanorexの検証対象とすることで、差分有無を確認することができる可能性がございます。

13. データソースを使用し、バリデーションのnullチェックを行うことはできますか?

Excelファイルを使用した場合はnullを扱うことができないため、ユーザーコードでの対応が必要となります。
たとえば、バリデーションアクションをユーザコードに自動変換した場合、以下の様に修正します。
データソースで使用するExcelファイルの該当セルで「(null)」と入力しておくことで、これをnullに変換(それ以外は元の値をそのまま使用)してバリデーションを行います。

修正前のコード:
Validate.Attribute(repo.Form.TextInfo, "Text", var);

修正後のコード:
String tmp = var.Equals("(null)") ? null ? var;
Validate.Attribute(repo.Form.TextInfo, "Text", tmp);

14. イメージバリデーションにおいて、比較画像の任意の領域を対象外にするといった指定ができますか?

いいえ、できません。
しかしながら、"Validate - ContainsImage"アクションを使用することで、矩形選択した任意の領域のみを比較対象とすることは可能です。

15. イメージバリデーションにおいて、類似度を指定することはできますか?

はい、可能です。
バリデーションアクションのCompareImageにて、プロパティの"Image Based"-"Similarity"から指定することができます。
0.0 ~ 1.0の範囲で指定でき、1.0 = 100%(完全一致)になります。

16. イメージバリデーションにおいて、テスト結果レポートに表示されるDifference imagesの2つの画像について教えてください。

左の画像(白黒画像):
2値表記で両方の画像の違いを示しています。
黒は、比較した画像がその領域でまったく同じであることを意味します。
白いピクセルは、比較した画像が異なることを示します。

右の画像:
比較した画像間の量的な違いを視覚化したものです。
色は、2つのイメージのカラー値を減算し、その差をグレーイメージに適用することによって計算されます。
比較した画像の色の差が大きいほど、差のある画像は色が濃くなります。灰色の部分は差が無い部分になります。

以下のRanorex Blogに、イメージバリデーションについて解説があります。
http://ranorex-jp.blogspot.com/2016/06/blog-post_27.html

17. Windowsの拡張デスクトップ/ディスプレイ領域でもテストのレコーディングおよび、実行はできますか?

はい、可能です。
拡張ディスプレイ環境でレコーディングしたアプリケーションの操作は、操作対象のウィンドウが主ディスプレイ、副ディスプレイのいずれの領域にあっても、正しく再生することができます。
また、拡張領域も含めて単一のディスプレイ領域として扱うことができます。

「The pointer cannot be moved to point '{X=n,Y=n}' since it is outside of the visible desktop.」エラーが発生する場合:
このエラーは、拡張ディスプレイを無効にした状態で再生を行うと発生します。
拡張ディスプレイ領域で操作をレコーディングし、再生時に表示を複製モードにしたり、外部ディスプレイを取り外した場合など。
Ranorexが単一のディスプレイと認識してレコーディングした領域が、実行時に無効(存在しない)ために発生するエラーとなります。
そのため、レコーディング時と同じディスプレイ環境でテストを実行する必要があります。

テスト実行

1. テスト実行時に画面(右下)に表示される進捗ダイアログ(プログレスダイアログ)を表示させないようにすることはできますか?

はい、可能です。
以下の手順で設定を行ってください。
  1. Ranorex Studioにて、任意のプロジェクトを開きます。
  2. ツールバーの「テストスイートの表示」などからテストスイートを表示します。
  3. ツリーでテストスイートを選択、右クリックメニューから「プロパティ」を選択します。
  4. 「全般」タブの下にある「プログレス ダイアログの表示」のチェックボックスをオフにします。
※ 上記設定は、テストスイートからテストを実行した場合のみ反映されます。個々のテストケースやレコーディングモジュールからテストを実行した場合には、プログレスダイアログが表示されます。


2. Ranroexのリモートテスト機能(Ranorex Agent)を利用したい場合は、テスト環境にRanorex Agentのみをインストールすれば良いですか?

Ranorex Agentだけでなく、Ranorex自体のインストールも必要です。
テスト対象となるアプリケーションによって、最低限必要となるコンポーネントは以下のようになっています。
  • Webアプリケーション
    • Ranorex Agent
    • Ranorex Main Components
    • Ranorex Internet Explorer Add-on / Ranorex Firefox Add-on / Ranorex Chrome Add-on
      ※ WebブラウザーのAdd-onは、使用するWebブラウザーのみインストールしてください。
  • Windows(デスクトップ)アプリ
    • Ranorex Agent
    • Ranorex Main Components
  • モバイルアプリ(iOS/Android)
    • Ranorex Agent
    • Ranorex Main Components
    • Ranorex Studio


3. Runtimeライセンスを利用してテスト実行を行いたい場合、Ranorexのインストールは必要ですか?

基本的にはRanorexのインストールが推奨されますが、必須ではありません。
Ranorexのインストールを行えないテスト環境などにおいては、テストの実行に必要なRanorexのライブラリ、アセンブリ、ライセンス情報を任意のフォルダーに配置することでテストを実行することができます。
詳細については、Ranorexのユーザガイドの「XCOPYでのデプロイ」の章を参照ください。

なお、Ranorexバージョン6.x以降においては、リモートテスト機能(Ranorex Agent)を使用することを推奨しています。詳細については、Ranorexのユーザーガイドの「リモート」の章を参照ください。


4. テストの実行回数を指定することはできますか?

以下の方法で対応可能です。
  • テストケースのプロパティから"Iteration Count"を指定(※Ranorexバージョン7以降で対応)
  • レコーディングモジュールの設定(SETTINGS)で、「現在のレコーディング」タブにある、「リプレイの繰り返し回数」を指定
  • データソースを利用(データ行数分、繰り返し実行)
  • ユーザーコードでループ処理のコードを記述


5. テストの実行速度を速めるための設定などはありますか?

テストの実行速度については、以下2つの方法でレコーディングモジュールごとの速度変更を行うことが可能です。
  • ターボモード:レコーディングモジュールの各アクションで指定されているディレイ(プロパティのDuration)をスキップし、高速に動作させます。
    Delayや、Wait Forアクションで設定したディレイはスキップされません。
  • リプレイ速度係数:レコーディングモジュールの各アクション(マウスカーソルの移動など)に対する実行速度を変更します。
    値は係数で指定し、値を増やすことで速度が上がり、減らすことで速度が下がります。
    アクションで指定されているディレイには適用されないため、アクションが実行される間隔は変わりません。
以下の手順で設定を行ってください。
  1. Ranorex Studioにて、対象のレコーディングモジュールを開きます。
  2. レコーディングモジュール画面の「SETTING」をクリックします。
  3. 表示される画面にて、「現在のレコーディング」タブを開きます。
  4. ターボモードを有効とする場合は、「リプレイとコード生成でターボモードを有効にする」にチェックを入れます。
    これにより、ターボモードが有効となり、実行速度が速まります。
    また、リプレイ速度係数を変更し、速度を速めるには、「リプレイ速度係数(%)」の値を小さくします。
詳細については、以下のRanorexユーザガイドを参照ください。
ターボモード:https://www.ranorex.com/help/v7.2/ja/lesson-5-ranorex-recorder/replay-and-debug-actions
リプレイ速度係数:https://www.ranorex.com/help/v7.2/ja/lesson-5-ranorex-recorder/before-starting-to-record

6. Ranorexをインストールせずにテストを実行することができますか?

はい、可能です。
テスト実行に必要なライブラリ、アセンブリ、ライセンス情報を、テスト実行環境の任意のフォルダーに配置することでテスト実行を行うことができます。
手順については、以下のRanorexユーザガイドをご参照ください。
https://www.ranorex.com/help/v7.2/ja/xcopy-deployment

7. テスト実行時にエラーが発生しても、テストを続行させることができますか?

はい、可能です。
本FAQの「Ranorexの機能(全般)」-「テスト作成」にある、以下の項目をご参照ください。
>テスト実行時にアクションが失敗しても処理を継続するにはどうしたら良いですか?
>たとえば、バリデーション(Validation)のアクションなどで、検証に失敗した場合でも、テストを継続させたい場合など。


8. コマンドラインインタフェースはありますか?

はい、ございます。
テスト用の実行モジュールが(*.exe)が、Ranoexのソリューションのフォルダ内({ソリューション フォルダ名}\{プロジェクト フォルダ名}\bin\Debug)に生成されます。
詳細については、以下のRanorexユーザーガイドをご参照ください。
https://www.ranorex.com/help/v7.2/ja/lesson-4-ranorex-test-suite
(「Ranorex Studio を使用しないテストの実行」-「コマンド ラインによるテストの実行」)


9. Ranorex Agentによるリモートテストにおいて、デプロイした実行ファイルや生成されるレポートは何処に生成されますか?

テスト実行環境(Ranorex Agent側)の「C:¥Users¥<ユーザー名>¥AppData¥Local¥Temp¥Ranorex」に生成されます。
また、ホスト側では、[レポートを開く]を実行した時点で「C:¥Users¥<ユーザー名>¥AppData¥Local¥Temp¥RanorexDownloads」にレポートが生成されます。

10. Ranorex Studioのエージェントの設定で、Ranorex Agentが認識されません。

8081ポートが既に使われている可能性があります。ポートが重複してもエラーは表示されません。
McAfeeのセキュリティソフトを使用している場合、 Framework Serviceや、McAfee Agent Common Serviceのプロセスでポートが使用されているため、これらのプロセスを停止するか、もしくはポートを変更する必要があります。

参考:
コマンドプロンプトで以下のコマンドを実行すると、ポートを専有しているプロセスを確認することができます。
コマンド結果にて、画面右側にプロセスIDが表示されるため、タスクマネージャーでどのプロセスが使用されているかを確認することができます。
netstat -ano¦find "8081"

レポート

1. Ranorexがインストールされていないマシン環境でも、テスト結果レポートを閲覧できるファイル形式で出力できますか?

HTMLまたはPDF形式にて出力できます。
  • HTML形式によるレポート出力
    Ranorexで生成されるレポートのファイル形式(*.rxlog)の実体はHTMLおよびXMLです。そのため、出力レポートの拡張子を変更することで、Webブラウザーで参照できるようになります。
    1. Ranorex Studioにて、テストスイートを表示します。
    2. テストスイートを右クリックし、ショートカットメニューから「プロパティ」を選択します。
    3. 「レポート」タブにある「レポートファイル」にて、出力するレポートのファイル形式を".html"に変更します。
  • PDF形式によるレポート出力
    標準のレポートをPDF形式に変換する方法が提供されています。
    詳細は、Ranorex Blogにある「RanorexレポートをPDFに変換する」を参照ください。

2. エラーが発生した際、画面ショットが取得されレポートされるが、レポートさせない方法はありますか?

以下の方法で対応可能です。
  1. テストスイートを右クリックし、ショートカットメニューから「プロパティ」を選択します。
  2. 表示される画面にて、「レポート」タブを表示します。
  3. 「スクリーンショット」-「撮影モード」のプルダウンメニューから「Off」を選択します。


3. テスト実行毎にレポートの出力ディレクトリを変更できますか?

ディレクトリ名および、レポートファイル名には、次のプレースホルダーを使用できます。
そのため「%S_%Y%M%D_%T」の様な書式を指定することで対応できます。
%T 時間
%D 日付
%M 月
%Y 年
%L 実行レベル
%C 実行設定名
%H ホスト名
%S テストスイート名

4. テスト結果レポートをPDF形式で出力できますか?

はい、可能です。
弊社、Ranorex Blogの「 RanorexレポートをPDFに変換する」(http://ranorex-jp.blogspot.jp/2016/07/ranorexpdf.html)を参照ください。

5. 画像比較の結果をレポートに表示できますか?

はい、可能です。
以下の手順で設定を行ってください。
  1. レコーディングモジュールを開きます。
  2. 「Validate」-「CompareImage」アクションのプロパティを開きます。(アクションを右クリックし、ショートカットメニューから「プロパティ」を選択します)
  3. プロパティ画面にて、「Report Difference Images」のプルダウンメニューから、適切なメニューを選択します。
    以下のメニューを選択することができます。
    • Never:何もしません。(デフォルト設定)
    • OnFail:失敗時にレポートします。
    • OnSuccess:成功時にレポートします。
    • Always:失敗/成功時にレポートします。

6. スクリーンショットなどの、テスト結果として出力される画像ファイルの形式を変更できますか?

いいえ、できません。
ただし、スクリーンショットにおいては、ユーザコード(C#または、VB.NETによるコーディング)を使用することで対応できます。
ユーザコードによる対応については、Ranorexのテクニカルサポートもしくは、担当営業までお問い合わせください。

対応アプリ


Windwos(デスクトップ)アプリケーション


1. オブジェクト内で期待するプロパティ情報を取得することができません。

いくつかの理由が考えられますが、主な理由として、以下がございます。

2. Firefox/Chromeブラウザーのアドオンをオフラインでインストールできますか?

はい、可能です。
以下の手順で設定を行ってください。
  • Chromeブラウザーのアドオン
    1. Chromeブラウザーの拡張機能(メニュー:「その他のツール」-「拡張機能」)を開きます。
    2. デベロッパーモードを有効にします。
    3. 「パッケージ化されていない拡張機能を読み込む」をクリックし、拡張機能ディレクトリとして「%Ranorexインストールディレクトリ%¥Ranorex Chrome Extension」を選択します。
      ⇒アドオンがインストールされます。
    4. インストールした拡張機能のID(32桁の英字)をメモします。
    5. テキストエディターで、「%Ranorexインストールディレクトリ%¥Bin¥Ranorex.Plugin.ChromeMsgHost.manifest」を開き、"allowed_origins"セクションに、上記IDの記述を追記します。
  • Firefox ブラウザーのアドオン
    Ranorexのインストルメントウィザードにて、インストールを行います。

Webアプリケーション

1. テスト実行時に、テストを行うWebブラウザーを変更することはできますか?

"Open Browser"アクションの"Browser"列で、ブラウザー名を変更することで、テストを行うブラウザーを変更できます。
また、以下のように、ブラウザー名を変数化することで、ExcelやCSVのデータソースで、対象のブラウザーを指定することもできます。
  1. レコーディングモジュールにて、"Open Browser"アクションの"Browser"列のブラウザー名を変数化します。
  2. 変数化したブラウザー名にデータソース機能を使用します(データソースのデータには、Webブラウザー名を指定します)。


2. Internet Explprerブラウザーのセキュリティ設定(保護モードの解除)を変更せずに、テストの作成および実行ができますか?

はい。セキュリティ設定(保護モードの解除)を変更せずとも、テストの作成および実行を行えます。
ただし、Ranorexの処理が重くなるため、セキュリティ設定(保護モードの解除)を変更することを推奨しています。

3. ドロップダウンリストアイテムを認識できません。

ドロップダウンリストは、使用するWebブラウザーやテスト対象のWebアプリケーションによって実装が異なるため、Ranorexがオブジェクトとして認識できるかどうかが大きく異なります。
"Select"要素を使用したドロップダウンリストでは、通常、テストのレコーディング時に”Set Value"アクションとして記録されます。
この場合、"Set Value"アクションの「Name」項目に"TagValue"を指定し、「Value」項目にリスト名を指定することで対応できます。


4. ブラウザーの画面キャプチャにおいて、スクロールキャプチャはできますか?

はい、可能です。
ただし、保存や、レポートへ出力するためにユーザーコードを実装する必要があります。

コード例:
Bitmap screenshot = repo.MyItem.Self.CaptureFullPageScreenshot();
Report.LogData(ReportLevel.Info, "User", screenshot);

※詳細については、弊社、担当営業にご確認ください。

5. ExcelのセルにSetValueアクションを使用して、値を入力できません。

Excelのセルはオブジェクトとして認識できますが、SetValueアクションを使用することはできません。
代わりに、KeySequenceアクションを使用してください。
KeySequenceアクションの"Sequence"項目の入力フォームに値を設定することで、Excelのセルに値を入力することができます。
ただし、半角カナ文字の入力には対応していません。

6. Ranorexが対応しているQtのバージョンを教えてください。

国内リリースの最新バージョン(v7.2.1)のRanorexでは、以下のバージョンに対応しています。
  • Qt Widgets: Qt 4.5.3 以降
  • Qt Quick : Qt 5.0.2 以降
  • Qt WebKi t: Qt 4.6.4 以降
詳細については、以下のRanorexユーザガイドを参照ください。
https://www.ranorex.com/help/v7.2/ja/technology-instrumentation/qt-testing


モバイルアプリケーション

1. 【iOS】テストで使用するプロビジョニングプロファイルは、別途用意する必要がありますか?

はい。配布用(Distribution)ではなく、開発用(Development)のプロビジョニングプロファイルを用意してください。
プロビジョニングプロファイルの他、P12証明書とそのパスワードも必要となります。
詳細は、Ranorexのユーザガイドにある「iOSのテスト」-「インストルメントと準備」を参照ください。


2. 【iOS/Android】モバイルのWebアプリケーションのテスト自動化はできますか?

はい、可能です。
なお、モバイルのWebアプリケーションのテストには、Ranorexの独自ブラウザー(RxBrowse)を使用する必要があります。
iOSやAndroidの組み込みブラウザー(Chrome、Safariなど)には対応していません。

※ RxBrowserは、各環境(iOS、Android)で提供されている標準のWebViewを使用しています。



3. 【Android】Google MapなどのAPI キーを必要とするアプリケーションのインストルメント方法を教えてください。

テスト対象アプリケーションのインストゥルメント時にAPIキーの設定を行います。
  1. Ranorex Studioにて、インストルメントウィザードを開きます。
  2. Andoridの設定画面を開きます。
  3. 「設定」ボタンをクリックします。
  4. 表示された「Settings」ダイアログの「APK Signing」を開き、以下の項目を表示ます。
    • JDK bin path
    • Key alias
    • Key password
    • Keystore
    • Keystore pass
  5. 以下の項目の設定を行います。
    • Keystore:jarsigner に使用されるキーストアの場所 (絶対パス)を指定します。
    • Keystore pass:jarsigner に使用されるキーストアのパスワードを指定します。
    • ※ パスワードは平文で格納されることにご注意ください。製品用証明書は使用できません。
  6. 「OK」ボタンをクリックし、通常のインストゥルメント手順を実行します。


4.【Android】モバイル端末でのレコーディングや、テスト実行において、アプリケーションの動作が重い/接続エラーが発生します。

モバイル端末をUSB接続している場合、Wifi接続にすることでパフォーマンスの改善が期待できます。
USB接続では、ADB経由で多くの情報のやりとりがおこなわれるため、Wifi接続に比べ、パフォーマンスが落ちる場合があります。


5.【Android】任意のキーイベントを発生させることができますか?

"Mobile Key Press"アクション では、既定のキーの押下しか指定できません。
既定のキー以外のキーイベントを発生させたい場合は、ユーザーコードで adb 経由でキーイベントを送る必要があります。

コード例:
String pathToAdb = @"C:¥¥Program Files (x86)¥¥Ranorex 6.1¥¥Bin¥¥RxEnv¥¥Android¥¥tools¥¥adb.exe";
Process pr = new Process();
pr.StartInfo.FileName = pathToAdb;
pr.StartInfo.Arguments = String.Format(" shell input keyevent 187"); // タスク切り替えボタン
pr.Start();
pr.WaitForExit();

キーコード一覧:
https://developer.android.com/reference/android/view/KeyEvent.html


6.【iOS】テストで使用するプロビジョニングファイルを教えてください。

配布用(Distribution)プロビジョニングプロファイルではなく、テスト用に、開発用(Development)プロビジョニングプロファイルを使用してください。
詳細については、Ranorexユーザガイドにあります、「iOSのテスト」-「インストルメントと準備」を参照ください。
参照ページ:https://www.ranorex.com/help/v7.2/ja/ios-testing/instrumentation-and-preparation


7.【iOS/Android】iOSとAndroidのシナリオを共有できますか?

基本的に共有化は難しいものとなります。
理由として、異なるプラットフォームであることから、オブジェクトのパス情報(RanoreXPath)が共通化できないことが考えられます。
これにより、共通化出来るところ、出来ないところの見極めなどが発生することから、別々のシナリオとして用意されることを推奨しています。


8.【Android】ネイティブアプリをインストルメントウィザードにてインストルメントし、テストの作成/実行を行ったところ、動作が重くなってしまいます。実行速度を速めることはできますか?

対象のアプリケーションのインストルメントの設定情報を変更し、再インストルメントすることで改善がみられる場合があります。 以下の手順で設定を行ってください。
  1. 対象のモバイル端末から、テスト対象アプリケーションをアンインストールします。
  2. Ranoerx Sudioにて、インストルメントウィザードのAPKファイルの選択画面にある、「設定」ボタンをクリックします。
  3. 表示された設定画面にて、以下のオプションの値を"False"にします。
    • Instrumentation Options」-「Full image comparison」
    • 「Instrumentation Options」-「Enable Web Testing」
    • ※Webアプリケーションのテストをおこなう場合は、Enable Web Testingオプションの値は”True”のままにしてください。
  4. 必要な情報を設定し、インストルメントを行います。

9. 【Android】インストルメント時に、以下のエラーが発生します。
"System.TimeoutException: Process did not finish within the specified timeout of ~"

アプリケーションのデプロイ処理が指定時間内に完了しなかった可能性が考えられます。
以下の対応により、現象が改善する場合があります。
  1. 対象のモバイルデバイスから、アプリケーションを削除します。
  2. Ranorex Studioを起動し、「設定」-「プラグイン」タブを開きます。
  3. 「Mobile」欄の「Deploy Timeout」を変更します(たとえば、"3m"(3分)など)。
  4. 再度、インストルメントを行います。

10. 【iOS】インストルメント時に、UDIDの記載がない旨のプロビジョニングファイルのエラーが発生します。

ipaファイルの署名に使用した、ipaファイル内のプロビジョニングプロファイルにテストで使用するデバイス(iPhone/iPadなど)のUDIDの記載がないことが考えられます。
インストルメントにて、 対象デバイスののUDIDを登録したプロビジョニングファイルをご用意ください。
また、Ranorexのテストでは配布用(Distribution)プロビジョニングプロファイルは利用できません。必ず、 開発用(Development)プロビジョニングプロファイルを使用ください。

11. 【iOS/Android】スワイプ操作には対応していますか?

テストのレコーディング時には、スワイプ操作を記録することはできません。
対象オブジェクトをリポジトリに追加し、、手動でスワイプアクションを設定する必要があります。
※Ranroex v8以降では、テストのレコーディング方法が異なります

12. 【iOS/Android】マルチタッチ(ピンチイン/ピンチアウト含む)の操作を行うことはできますか?

いいえ、できません。
現在の最新バージョン(Ranorex v8)では回避策はありません。

その他

インストール

1. Ranorexの複数のバージョンを1台のマシンにインストールできますか?

1台のマシンに複数の異なるバージョンのRanorexをインストールすることはできません。

古いバージョンのRanorexが入ったマシンに、新しいバージョンのRanorexをインストールした場合、
古いバージョンのRanorexが自動的に削除された後、新しいバージョンのRanorexがインストールされます。

また、新しいバージョンのRanorexが入ったマシンに古いバージョンのRanorexをインストールした場合、
インストールウィザード起動時に、インストールできない旨のメッセージが表示され、インストールすることができません。
この場合、新しいバージョンのRanorexを手動でアンインストール後、新しいバージョンのRanorexをインストールしてください。


2. "Microsoft Visual C++"ランタイムのインストールに失敗します。

"Microsoft Visual C++"ランタイムに依存する他のアプリケーションを使用していることが考えられます。
他のアプリケーションをすべて終了してから、再度、Ranorexをインストールしてください。

インストールログに出力されるエラー:
Process exited with code 1603
Status of package 'Visual C++ Runtime Libraries (x64)' after install is 'InstallFailed'
Status of package 'Visual C++ Runtime Libraries (x86)' after install is 'InstallNeeded'


3. サイレントインストールはできますか?

はい、可能です。
詳細については、Ranorexユーザガイドにあります、「Ranorexのサイレントインストール」を参照ください。
参照ページ:https://www.ranorex.com/help/v7.2/ja/silent-installation-of-ranorex

その他

1. モジュールブラウザーにレコーディングモジュール名が表示されません。

原因として、Windowsのディスプレイの設定にて、DPIの設定を100%以外に指定していることが考えられます。
Ranorexは、DPIの設定が100%のみ対応しています。

以下の手順で設定を行ってください。(※Windows 10の場合)
  • Windowsのデスクトップ上で、右クリックメニューから「ディスプレイ」を選択します。
  • 表示された設定画面にて、”テキスト、アプリ、その他の項目のサイズを変更する”のシークバーをスライドさせ、100%に設定します。
  • マシンを再起動します。


2. パッケージ管理にて、Nugetへの接続エラーが発生します。

Ranorex のパッケージ管理が Nuget v3 に対応していないために発生します。
Nuget v2 を使用するように設定を行う必要があります。
  1. Ranorex Studioにて「ツール」メニューから、「オプション」-「パッケージ管理」-「パッケージソース]を開きます。
  2. Nuget v3 (https://api.nuget.org/v3/) の設定を削除または、チェックボックスを無効にします。
  3. 以下のように、Nuget v2 の設定を入力し、「追加」ボタンをクリックします。
    名前:nuget.org
    ソース:https://www.nuget.org/api/v2/
  4. 追加された設定(nuget.org)のチェックボックスが有効になっていることを確認します。
※Visual Studioがインストールされていると、Nuget v3が設定される場合がございます。


3. Ranorexを再インストールしても評価ライセンスが継続されますか?

評価ライセンスの有効期限が切れていない場合は、Ranorexを再インストールしても有効となります。
ただし、有効期限はリセットされないため、以前の利用日数がそのまま継続されます。
また、有効期限が切れているマシンに対して、Ranorexを再インストールしても有効期限切れの状態となります。


4. 評価ライセンスにて、Ranorex Agentを利用することはできますか?

はい、可能です。
Ranorex Agent単体では利用できませんが、Ranorex本体の評価版をインストールすることにより、Ranorex Agentもこの評価ライセンスを利用し動作することができます。

UIテスト自動化ツール Ranorexに
関するお問い合わせ

  • テクマトリックス株式会社
    東京本社

    ソフトウェアエンジニアリング事業部

    03-4405-7853

メールでのお問い合わせ
ranorex-info@techmatrix.co.jp

CONTACT

製品についてやテクマトリックスについてなど、
こちらよりお気軽にお問い合わせいただけます。