イメージ バリデーション(概要)#1

イメージ バリデーションは、Validateアクションを使用した検証方法の1つとして提供されている画像比較を行うための機能です。テスト対象アプリケーションのオブジェクトを画像として比較し、検証します。

画像の比較方法は、ContainsImageと、CompareImage の2種類があります。

ContainsImage

これは、イメージベース オートメーション のバリデーションです。バリデーションが実行されると、リポジトリ アイテムの現在のスクリーンショットが作成されます。次にこのスクリーンショットが、Screenshot name カラムで指定するスクリーンショットを含むかどうかをチェックします。Screenshot name カラムにある … ボタンをクリックすると、スクリーンショットの設定ダイアログが開かれます。


Ranorex ユーザガイド(アクションリスト – ContainsImages) 

CompareImage

これは、イメージベース オートメーションのバリデーションです。バリデーションが実行されると、リポジトリ アイテムの現在のスクリーンショットが作成されます。次にこのスクリーンショットが、Screenshot name カラムで指定するスクリーンショットと等しいかどうかをチェックします。Screenshot name カラムにある … ボタンをクリックすると、スクリーンショットの設定ダイアログが開かれます。


Ranorex ユーザガイド(アクションリスト – CompareImages

※過去記事(イメージ バリデーション機能)は、CompareImageを使用した イメージバリデーションについて解説しています。

画像の比較方法

比較した画像が一致しているかを判断する指標として、類似度 (Similarity)が使用されます。類似度は、0.0~1.0の間で指定され、1.0 = 100%を表します。たとえば、 比較した画像の類似度が、1.0(100%)である場合、比較した2つの画像が一致することを意味します。 また類似度は、Validateアクションのプロパティ(Similarity)にて変更することができます。

ContainsImageによる画像比較

テスト対象アプリケーションのあるオブジェクト(画像)に対して、期待する
画像
(画像を比較した際にとなる画像)が含まれているかを検証したい場合はContainsImage を使用します。

たとえば、下図のアプリケーション画面において、カレンダー(赤枠)をオブジェクトとして取得し、カレンダー内にある、”xxxx年xx月”の画像部分が含まれているかを検証します。

(Ranorex デモアプリ)

ContainsImage では、期待する画像で指定した範囲(ピンク色の枠) の画像が、テスト実行時に表示される対象オブジェクトの画像に含まれるかを検証します。選択しない箇所については検証対象に含まれません。

(期待する画像)

CompareImageによる画像比較

テスト対象アプリケーションのあるオブジェクト(画像)に対して、期待する画像と一致するかを検証したい場合は、CompareImage を使用します。

たとえば、下図のアプリケーション画面において、カレンダー(赤枠)をオブジェクトとして取得し、カレンダー全体の画像が期待する画像と一致するかを検証します。

(Ranorex デモアプリ)


CompareImage では、期待する画像で指定した範囲(ピンク色の枠) の画像が、テスト実行時に表示される対象オブジェクトの画像と一致するかを検証します。また CompareImage では、画像だけではなく、画像のサイズも比較条件に含まれます。

(期待する画像)

本記事ではイメージ バリデーション がどの様な機能かについて説明しました。次回は、ContainsImageと、CompareImage の使用方法について説明したいと思います。