テスト作成

オブジェクトに対して、テスト実行時のマウスクリック位置が座標で記録されるが、常に真ん中をクリックするよう事前に設定できますか?
Ranorexの「設定」メニューにある、「レコーダーの初期設定」タブにおいて、「レコーディング」-「レコーディング時の座標モード」を “None” に設定することで対応できます。
テスト実行時に、任意のタイミングでテスト対象アプリケーションの画面をキャプチャできますか?

画面キャプチャ用のアクション(Capture Screenshot)を使用することで対応できます。

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

スクリーンショットの取得については、以下のBlog記事をご参照ください。
・テストのエビデンスとしてスクリーンショットを取得する
https://ranorex.techmatrix.jp/blog/2019/04/23/evidence-screenshots/

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

以下の方法で対応可能です。

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

文字の表示切れについては、属性値としてのバリデーションを行うことはできません。

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

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

対象の画像のすべてのピクセルの対して、RGB値を比較します。
類似度(Similality)は、各ピクセル値の平均二乗誤差の和で計算されます。

例えば、10×10 サイズで、ただ一つのピクセルを除き、他のすべてのピクセル値が同じ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%」となります。

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

いいえ、できません。
1つのテストスイートに、複数データソースを「登録」することはできますが、1つのテストケース/スマートフォルダーには、1つのデータソースのみが使用できます。

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

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

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

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

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

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)アクションを使用ください。

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

アクションテーブルでの条件分岐による編集はできませんが、ユーザーコードを使用することで対応できます。なお、Ranorex バージョン7以降では、テストケース/スマートフォルダー単位での条件分岐による処理が可能になりました。

テストケース/スマートフォルダー単位での条件分岐については、Ranorex Blogの記事「分岐条件をご参照ください。

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

PDFのビューアで表示された画面全体を1つのオブジェクトとして認識されるため、画面内の個々の文書や画像を比較することができません。

方法としては、外部ツールを利用することで対応できる可能性があります。 例として、diff-pdfというツールは、文書内、文書の見た目を比較して差分を表示します。
ツール内に何カ所の差異が検出されたかを表示する領域があるため、これをRanorexの検証対象とすることで、差分有無を確認することができる可能性がございます。
詳細は以下のBlog記事をご参照ください。
https://ranorex.techmatrix.jp/blog/2024/07/12/ranorex_diff-pdf/

データソースを使用し、バリデーションの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);

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

Ranorex v9.3以降では可能です。※v9.3で画像比較のマスク機能が追加されました。

マスク機能の設定方法については、Ranorex Blogの記事「Ranorex v9.3の新機能(イメージバリデーション)」をご参照ください。

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

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

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

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

  • 右の画像

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

イメージバリデーションについては、Ranorex Blogの記事「イメージ バリデーション機能」をご参照ください。

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

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

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

イメージバリデーションの画像領域を矩形以外で指定できますか?

いいえ、できません。
矩形のみの対応となります。

RanoreXPathの属性値において、”&(amp)nbsp;”にマッチさせるためにはどうしたら良いですか?

正規表現において、”¥s” を使用することで、スペースおよび&nbspにマッチさせることができます。

例:2,000 円
上記のInnerText(桁区切りされた数値)に正規表現を使用してマッチさせる場合、
font[@innertext~’¥d{1,3}(,¥d{3})*¥b¥s円’] とすることで対応いただけます。
金額部分を変数(例:$price)にした場合は、font[@innertext~$price+’¥s円’] となります。

補足情報として、外部データソースのデータ値に “ ” に相当するスペースを入力されたい場合は、
IMEパッドを用いて、”U+00A0″文字を選択することで対応いただけます。

数式で算出されているExcelデータでも、データバインディングすることはできますか?

はい、可能です。

式の演算結果の値がデータとして変数に渡されます。
なお、Excel上での書式設定は考慮されませんのでご留意ください。
※日付型の場合には、「08/15/2019 15:00:00」といったデータが渡されます。

変数名に日本語を使用することはできますか?

リポジトリ変数の名前には日本語を使用することができませんので、基本的には半角英数字をご使用ください。

イメージバリデーションにおいて、期待画像にマシンに保存された既存の画像ファイルを設定することはできますか?

Ranorexの画像比較は、期待画像とテスト実行時に表示される画像をピクセル単位で比較します。
そのため、お客様自身で事前に手動で取得したスクリーンショットとの比較は難しいですが、Ranorexで取得した既存のスクリーンショットとの比較は可能です。

期待画像にRanorexで取得したスクリーンショットを設定する場合は、Ranorexの画像比較のAPIを使用し、お客様自身で処理を実装する必要があります。

■実装手順
Validateアクションをユーザーコードに変換し、指定フォルダから期待画像を呼び出して画像比較メソッドに渡す処理を記述します。

1.Ranorex Studioにて、画像比較を行うレコーディングモジュールを開きます。
2. “Validate – CompareImage” アクションを追加し、右クリック>”ユーザーコードに変換” をクリックします。
3.”User code – メソッド名” に変換されたアクションで、”Method” 欄の “Args” ボタンをクリックします。
4.表示される引数エディターにて、”追加” ボタンをクリックします。
※メソッドの第二引数に期待画像のファイルパスを設定するため、引数を追加します。
5.”Name” 欄には任意の名前を設定できます。
6.OKボタンをクリックして閉じます。
7.”User code” アクションの第二引数に、期待画像が保存されているパスを指定します。
※リストから “As new variable” を選択することで変数化することもできます。
8. “User code – メソッド名” アクションをダブルクリックし、コードを開きます。
たとえば、以下のようにコードを編集します。

コード例:
public void Validate_CompairImage(RepoItemInfo imgInfo, string 引数名)
{
//CompressedImageから始まるコードは不要になるためコメントアウト

Imaging.FindOptions オブジェクト名_Screenshot1_Options = Imaging.FindOptions.Parse(“1;None;0,0,191,50;True;10000000;0ms”);
Report.Log(ReportLevel.Info, “Validation”, “Validating CompareImage (Screenshot: ‘Screenshot1’ with region {X=0,Y=0,Width=191,Height=50}) on item ‘imgtagInfo’.”, imgInfo);

//期待値となる画像ファイルの読み込み
Bitmap expectedImg = Ranorex.Imaging.Load(Stringの引数名);

//Validate機能を使った画像比較
Validate.CompareImage(imgInfo, expectedImg, オブジェクト名_Screenshot1_Options);
}

ユーザーコードについては、以下のユーザーガイドをご参照ください。
ユーザーコード

作成した変数を一覧で確認できますか?

変数が使用されているモジュールを開き、右上に表示される「VARIABLES…」ボタンをクリックすることで、変数名と初期値を確認できます。
また、ツールバーにある「データバインディングの表示」を選択することで、データバインディングパッドにて、データバインディングの状態を確認できます。

自前で処理コードを記述することはできますか?

ユーザーコード機能を使用することで、C#/VB.NETで処理を記述することができ、アクションとしてテストシナリオに追加できます。
Ranorexの機能はAPIとして用意されておりますので、カスタマイズすることも可能です。

詳細については、以下のユーザーガイドをご参照ください。
ユーザーコードライブラリの利用

テストスイート(テスト構成画面)のメンテナンスの方法が知りたいです。

テスト構成のメンテナンスは、GUI操作で簡単におこなうことができます。
テストケース/スマートフォルダーの追加は、テストスイートを右クリックすることで追加できます。
モジュールの配置は、モジュールブラウザーから、テストケース/スマートフォルダーにドラッグ&ドロップすることでできます。

テスト構成として、テストケース配下にテストケースを入れ子にして配置することはできませんので、テストケース配下のモジュールをまとめたい場合は、代わりにスマートフォルダをご利用ください。

詳しいテスト構成方法については、以下のユーザーガイドをご参照ください。
テストスイートの構造

ユーザーコードで戻り値を返すことはできますか?

ユーザーコードの引数設定は、引数エディターで編集できます。
ユーザーコードアクションをテストシナリオに追加し、Method項目の「Args」ボタンをクリックすることで、引数エディターを開くことができます。
なお、利用可能な引数のタイプには制限があります。

利用可能な引数については、以下のユーザーガイドをご確認ください。
ユーザーコードアクションと引数

StartAUT/CloseAUTとは何ですか?

それぞれに、テスト対象アプリの起動と終了の操作が含まれているレコーディングモジュールです。
プロジェクト作成時に、ロケットスタートウィザードを使用した場合、自動的に作成されます。

Ranorex Spy にて、RanoreXPath に一致する要素が1個以上、見つかりました。

Ranorex Spy にて、対象の RanoreXPath に一致する要素が1個以上、存在した場合は、意図しないオブジェクトに対してアクションが実行される可能性があります。
この場合、一意に特定できるようにパスを編集する必要があります。
パスの編集としては、一意に特定できる情報を持つ他の属性に変更するなどの方法があります。

ファイルのアップロードやダウンロードを自動化できますか。

Ranorex は、エクスプローラーのオブジェクト認識ができるため、ファイルアップロードやダウンロード操作も自動化できます。通常のテスト作成と同様に、ファイル操作をレコーディングしてください。

RanoreXPath を変数化したいです。

RanoreXPathの属性値を変数化することができます。
・リポジトリ変数の定義
https://support.ranorex.com/ja/userguide/ranorex-studio-advanced/data-driven-testing/preparations-data-driven-testing/

ソリューションの名前を変更できますか。

Ranorex GUI上から変更いただけます。
左上の「プロジェクト」ビューにある、ソリューションを右クリック >「名前の変更」にてご対応ください。

テスト実行

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

はい、可能です。

以下の手順で設定を行ってください。

  1. Ranorex Studioにて、任意のプロジェクトを開きます。
  2. ツールバーの「テストスイートの表示」などからテストスイートを表示します。
  3. ツリーでテストスイートを選択、右クリックメニューから「プロパティ」を選択します。
  4. 「全般」タブの下にある「プログレス ダイアログの表示」のチェックボックスをオフにします。

※ 上記設定は、テストスイートからテストを実行した場合のみ反映されます。個々のテストケースやレコーディングモジュールからテストを実行した場合には、プログレスダイアログが表示されます。

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

基本的にはRanorexのインストールが推奨されますが、必須ではありません。

Ranorexのインストールを行えないテスト環境などにおいては、テストの実行に必要なRanorexのライブラリ、アセンブリ、ライセンス情報を任意のフォルダーに配置することでテストを実行することができます。
詳細については、Ranorexのユーザガイドの「手動でのリモート実行」をご参照ください。

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

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

以下の方法で対応可能です。

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

テストの実行速度については、以下2つの方法でレコーディングモジュールごとの速度変更を行うことが可能です。

  • ターボモード:レコーディングモジュールの各アクションで指定されているディレイ(プロパティのDuration)をスキップし、高速に動作させます。
    Delayや、Wait Forアクションで設定したディレイはスキップされません。
  • リプレイ速度係数:レコーディングモジュールの各アクション(マウスカーソルの移動など)に対する実行速度を変更します。値は係数で指定し、値を増やすことで速度が上がり、減らすことで速度が下がります。アクションで指定されているディレイには適用されないため、アクションが実行される間隔は変わりません。

以下の手順で設定を行ってください。

  1. Ranorex Studioにて、対象のレコーディングモジュールを開きます。
  2. レコーディングモジュール画面の「SETTING」をクリックします。
  3. 表示される画面にて、「現在のレコーディング」タブを開きます。
  4. ターボモードを有効とする場合は、「リプレイとコード生成でターボモードを有効にする」にチェックを入れます。これにより、ターボモードが有効となり、実行速度が速まります。また、リプレイ速度係数を変更し、速度を速めるには、「リプレイ速度係数」の値を小さくします。

詳細については、以下のRanorex ユーザガイドをご参照ください。

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

はい、可能です。
テスト実行に必要なライブラリ、アセンブリ、ライセンス情報を、テスト実行環境の任意のフォルダーに配置することでテスト実行を行うことができます。

手順については、以下のRanorexユーザガイド「手動でのリモート実行をご参照ください。

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

はい、可能です。
本FAQの「Ranorex 機能」-「テスト作成」にある、以下の項目をご参照ください。

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

はい、ございます。
テスト用の実行モジュールが(*.exe)が、Ranoexのソリューションのフォルダ内({ソリューション フォルダ名}\{プロジェクト フォルダ名}\bin\Debug)に生成されます。

詳細については、以下のRanorexユーザーガイド「コマンドライン実行をご参照ください

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

テスト実行環境(Ranorex Agent側)の「C:¥Users¥<ユーザー名>¥AppData¥Local¥Temp¥Ranorex」に生成されます。

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

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

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

参考

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

netstat -ano¦find “8081”

テスト実行マシンの性能により、テスト作成マシンでの記録時とアプリケーションの 応答時間が異なるため、テストが失敗してしまいます。

“Delay”アクションや”WaitFor”アクションを使用することで、対応いただけます。

“Delay”アクションは、固定値として次のアクションまで待つ時間を設定することができます。
“WaitFor”アクションは、例えば、アプリケーション画面に、対象のオブジェクトが表示/非表示されたら、次のアクションを実行するといった条件を設定することができます。

テスト実行中に一時停止はできますか?

Ranorex v9.1以降では、テスト実行中にEndキーを手動で押下することで、一時停止できます。
自動的に一時停止を挟む場合は、ユーザーコードでの対応になります。

Ranorex Studioを使わずにエンドポイントを指定してテストを実行することはできますか?

はい、あります。
コマンドライン実行で、エンドポイント名を指定することでご対応いただけます。

コマンドライン実行については、ユーザーガイドの「コマンドライン実行」をご参照ください。

Ranorex Agentで使用するTCPポートを8081(デフォルト設定)から変更できますか?

はい、可能です。

〇事前準備(ホストマシンのみ)
ポートを変更しようとしているエージェントマシンを、Ranorex Studioのエージェントリストから削除し、Ranorex Studioを終了しておきます。

  • エージェントマシンの設定
    (1)Ranorex Agentを起動し、右上のメニューボタンを選択します。
    (2)表示されたメニューから[Show Files]を選択します。
    (3)エクスプローラーに表示されたファイル一覧から[config.toml]を選択し、テキストエディタで開きます。
    (4)config.tomlに記載されているApiPortの値を、任意の値に変更し、保存します。
    (5)Ranorex Agentを再起動(右上のメニューボタン→[Exit]を選択して終了し、再度起動)します。
    ※ApiPortに設定したポートをファイアウォール設定で開放します。
  • ホストマシンの設定
    (1)Ranorex Studioを起動し、[リモート]ペインを開きます。
    (2)[Ranorex Agentの追加]を選択します。
    (3)[エージェントの管理]を選択します。
    (4)[手動で検索]の欄にエージェントマシンの [ホスト名またはIPアドレス]:[ApiPortに設定したポート番号] を入力して検索し、エージェントを追加します。
    例)エージェントマシンがホスト名:MyAgent、IPアドレス:xxx.xxx.xxx.xxx、ポート番号:9000 の場合
    MyAgent:9000
    xxx.xxx.xxx.xxx:9000
テスト終了の報告やテスト結果をメールで送信することはできますか?

オートメーションヘルパーの「EmailModule」を使用することで、テスト実行時の任意のタイミングでメール通知を受け取ったり、テスト結果を自動的に送信できます。
詳細については、以下のユーザガイドをご参照ください。
オートメーションヘルパーの追加
EmailModule

テスト実行後、Chrome / Edge Chromium ブラウザーを閉じてもプロセスが残ったままになります。

Chrome / Chromium Edge の各ブラウザーの仕様で、ブラウザーを閉じた後もプロセスが残ります。こちらの対応策として、Chrome/Chromium Edgeブラウザーの設定にてバックグラウンドでプロセスが残らないような設定に変更ください。

【Chromeブラウザーの設定】
対象のマシンにChromeブラウザーがインストールされている場合には、
以下の手順をおこなってください。
1.Chromeのブラウザで下記のURLを開きます。
・ChromeURL: chrome://settings/system
2.「バックグラウンドアプリの処理を続行する」オプションを無効化します。
3.Chromeブラウザーを閉じます。
4.念のため、タスクマネージャーから”Chrome”プロセスが残っていないか確認します。
プロセスが残っている場合は、[タスクの終了]から強制的にプロセスを終了してください。

【Chromium版Edgeブラウザーの設定】
1.Chromium版Edgeのブラウザーで下記のURLを開きます。
・EdgeURL : edge://settings/system
2.左側のツールバーから 「システム」をクリックし、
「Microsoft Edgeが終了してもバックグラウンドアプリの実行を続行する」オプションを無効化します。
3.Chromium Edgeブラウザーを閉じます。
4.念のため、タスクマネージャーから”Microsoft Edge”プロセスが残っていないか確認します。
プロセスが残っている場合は、[タスクの終了]から強制的にプロセスを終了してください。

レポート

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

HTMLまたはPDF形式にて出力できます。

HTML形式によるレポート出力

Ranorexで生成されるレポートのファイル形式(*.rxlog)の実体はHTMLおよびXMLです。そのため、出力レポートの拡張子を変更することで、Webブラウザーで参照できるようになります。

    1. Ranorex Studioにて、テストスイートを表示します。
    2. テストスイートを右クリックし、ショートカットメニューから「プロパティ」を選択します。
    3. 「レポート」タブにある「レポートファイル」にて、出力するレポートのファイル形式を”.html”に変更します。

PDF形式によるレポート出力

Ranorex v9.5.3以降は、レポートのプロパティ設定を変更することで、簡単にPDF形式のレポートを生成できます。

  • レポート設定 – PDFレポートの結合を有効にする
    ※この機能を利用する場合、お使いの環境に、IPA(独立行政法人情報処理推進機構)によって配布されている IPAex フォント のインストールが必要です。
    IPAex フォントのダウンロードおよびインストールについては、以下を参照ください。
    https://moji.or.jp/ipafont/ipafontdownload/

v9.5.3以前は、Ranorex Blogの以下の記事をご参照ください。

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

以下の方法で対応可能です。

  1. テストスイートを右クリックし、ショートカットメニューから「プロパティ」を選択します。
  2. 表示される画面にて、「レポート」タブを表示します。
  3. 「スクリーンショット」-「撮影モード」のプルダウンメニューから「Off」を選択します。
テスト実行毎にレポートの出力ディレクトリを変更できますか?

ディレクトリ名および、レポートファイル名には、次のプレースホルダーを使用できます。そのため「%S_%Y%M%D_%T」の様な書式を指定することで対応できます。

  • %T 時間
  • %D 日付
  • %M 月
  • %Y 年
  • %L 実行レベル
  • %C 実行設定名
  • %H ホスト名
  • %S テストスイート名
テスト結果レポートをPDF形式で出力できますか?

Ranorex v9.5.3からは、レポートのプロパティ設定を変更することで、簡単にPDF形式のレポートを生成できます。

  • レポート設定 – PDFレポートの結合を有効にする
    ※この機能を利用する場合、お使いの環境に、IPA(独立行政法人情報処理推進機構)によって配布されている IPAex フォント のインストールが必要です。
    IPAex フォントのダウンロードおよびインストールについては、以下を参照ください。
    https://moji.or.jp/ipafont/ipafontdownload/

なお、オートメーションヘルパー機能を使用することでも、PDF形式のレポートを生成できます。
詳細については、Ranorex Blogの以下の記事をご参照ください。

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

はい、可能です。

以下の手順で設定を行ってください。

  1. レコーディングモジュールを開きます。
  2. 「Validate」-「CompareImage」アクションのプロパティを開きます。(アクションを右クリックし、ショートカットメニューから「プロパティ」を選択します)
  3. プロパティ画面にて、「Report Difference Images」のプルダウンメニューから、適切なメニューを選択します。 以下のメニューを選択することができます。
    • Never:何もしません。(デフォルト設定)
    • OnFail:失敗時にレポートします。
    • OnSuccess:成功時にレポートします。
    • Always:失敗/成功時にレポートします。
スクリーンショットなどの、テスト結果として出力される画像ファイルの形式を変更できますか?

いいえ、できません。
ただし、スクリーンショットにおいては、ユーザコード(C#または、VB.NETによるコーディング)を使用することで対応できます。

ユーザコードによる対応については、Ranorexのテクニカルサポートもしくは、担当営業までお問い合わせください。

“Retry Count”を使用してテスト実行すると、失敗アクションが表示されません。 失敗アクションを表示する方法はありますか?

Ranorex オートメーションヘルパー機能で用意されている、コードモジュール(CollectErrorMessagesModule.cs)を使用することで、レポートに失敗アクションを表示することが可能となります。
コードモジュールは、テストスイート内に配置することで使用できます。

Ranorexオートメーションヘルパーの使用方法については、ユーザーガイドの「オートメーションヘルパーの追加と更新」をご参照ください。

全てのアクションに対してスクリーンショットを取得し、レポート上に保存することはできますか?

Ranorexのオプション機能としては、用意されておりませんが、”Program.cs”ファイルに直接、以下のユーザーコードを記載することで対応いただけます。

もしくは、以下のユーザーコードを設定したコードモジュールを用意し、[Setup]配下に配置することで対応いただけます。

[ユーザーコード]
TestReport.TracingScreenshotCountLocal = int.MaxValue;
ActivityStack.Instance.UpdateActivity += delegate { TestReport.SaveLocalScreenshotBuffer(); } ;

レポートに出力される変数に流し込まれた外部データをマスクすることはできますか?

はい、可能です。
データソースの管理画面にて、マスク対象のカラムを指定することで、対応できます。

マスク指定については、ユーザーガイドの「データソースの管理と割り当て」をご参照ください。

レポートファイル名を任意の名前に変更できますか?

テストスイートのプロパティで変更できます。
1. テストスイート画面を開き、テストスイートを右クリックします
2. 「レポート」タブをクリックし、レポートファイル名を任意の名前に変更します

レポートファイル名では、以下のプレースホルダーを使用できます。
%T 時間
%D 日付
%M 月
%Y 年
%L 実行レベル
%C 実行設定名
%H ホスト名
%S テスト スイート名
%X テスト スイートの結果

レポートを表示するのに必要なファイルは何ですか?

Ranorexのレポートを表示するのに必要なファイルは、
*.rxlog、*.rxlog.data、RanorexReport.css、Ranorexreport.png、RanorexReport.xsl、イメージファイルです。
なお、レポートの表示に必要なすべてのファイルをZip圧縮したアーカイブレポート(*.rxzlog)にすることで、簡単にレポートを共有できます。

詳細につきましては、以下のユーザーガイドをご参照ください。
Ranorex アーカイブレポートの作成

レポートに「Condition not fulfilled. At least one rule wasn’t matched.」と表示されます。

条件分岐で設定したルールに1つも当てはまらなかった場合に表示されるエラーになります。レポートを確認の上、必要であれば条件分岐のルールを変更ください。

HTML レポートを Chrome / Edge Chromium ブラウザーで開くことはできますか。

特定のフラグを付けて各ブラウザーを起動し、アドレスバーにレポートファイルのパスを指定することで参照できます。
以下のフラグを追加して各ブラウザーを起動してください。
“–allow-file-access-from-files”