Applitools Eyes連携 後編:PDFファイルの画像検証

前編に引き続き、RanorexとApplitools Eyesの連携による画像検証について紹介します。今回は、PDFファイルのレイアウトを画像検証する方法について説明します。

Applitools Eyes連携では、前編で紹介したWeb画面全体の画像検証以外にも、 PDFファイル単位での画像比較をおこなうことが可能です。
なおApplitools EyesにおけるPDFファイルの画像比較については、Ranorexを連携しなくても、公式サイトからダウンロードできるImageTester.jarを使用して、コマンドラインで検証が可能です。コマンドラインでの実行に関して詳しくは、公式サイトをご参照ください。

※Applitools Eyesとは、ビジュアルAIを用いたテスト自動化プラットフォームです。 詳しくは公式サイトおよび前編の記事をご参照ください。

※本検証では、Ranorex v9.5.3を使用しています。

※本検証は、Applitools Eyesとの連携によるテスト実行において、動作を保証するものではありません。また、本検証に関するサポートへの問い合わせは受付けておりませんので、予めご了承いただけます様、お願いいたします。

1. 事前準備

Applitools Eyes連携をおこなうには、いくつかの初期設定が必要です。詳しくは、前編(Applitools Eyes連携 前編:Web画面全体の画像検証)をご参照ください。

  1. Applitools アカウントの作成
  2. API key の取得
  3. Ranorex ソリューションにパッケージを追加
  4. Ranorex テストスイート設定

2. PDF検証用のメソッドを追加

Ranorex Studioにて、Applitools Eyesによるチェックをおこないたいレコーディングモジュールを開きます。
PDFの検証は、リポジトリアイテムではなく、pdfファイルを指定する形となるため、アクション テーブルで、[新しいアクションの追加] – [ユーザー コード] – [ライブラリから選択] をクリックし、 VisualCheckpoint(String fileOrFolderPath)メソッドをダブルクリックします。


VisualCheckpoint(String fileOrFolderPath)メソッドの引数に、検証するPDFファイルまたはフォルダーのパスを入力します。

ファイルおよびフォルダーのパスには、以下の書式が使用できます。
•絶対パス
単一のファイルの場合: C:\users\user\documents\MyPDF.pdf
フォルダー全体の場合: C:\users\user\documents\

•相対パス
単一のファイルの場合: MyPDF.pdf
フォルダー全体の場合: documents\
※相対パスは、テスト実行ファイルからの相対パスです。

3. テスト実行

テスト実行・結果の確認手順については、前編(Applitools Eyes連携 前編:Web画面全体の画像検証)をご参照ください。

6. テストの実行
7. 結果の確認

4. 比較結果

今回は、扶養控除等(異動)申告書を対象に、ファイル比較をおこなってみました。
対象のPDFファイルが複数ページにわたる場合でも、ファイルを指定するだけですべてのページを1枚ずつ比較してくれます。


画像比較の仕組みはWebアプリなどと同様です。Applitools EyesはAIを用いた画像比較が可能です。Ranorexのようなピクセル単位の比較では、人間の目ではわからないような微妙な色の違いなども差分として検知されてしまうことがありますが、Applitools Eyesでは人の目で見てわかる差分のみを検出することができます。ただし、あくまで画像比較となるため、人が判断して「似ているからOK」とするような検証がおこなえるわけではありません。
以下は、令和2年と令和3年の扶養控除等(異動)申告書の比較結果です。このように、見た目の似ているレイアウトであっても、大きさや表示位置が異なる場合は、差分としてレポートされます。


※上記の例のように、異なる2つのファイルを比較したい場合、VisualCheckpoint(String fileOrFolderPath)メソッドを使用する際は、比較したい2つのPDFファイルを同一の名前にしておき、2回目の実行前にメソッドの引数に指定したファイルを入れ替えることで比較がおこなえます。

まとめ

Applitools Eyes連携を使用することで、Ranorexだけでは対応が難しかった、PDFファイル単位での画像比較が可能です。ページごとにValidateアクションを作成する必要もないため、帳票のレイアウト崩れを確認したいケースで簡単に検証がおこなえます。
Applitools Eyesの無償アカウントに関しては、どなたでも作成可能ですので、興味のある方はぜひお試しください。