開発者ブログ

10.Pitalium Explorerを使用してテスト結果を確認する

Last modified by hashimot on 2017/08/01, 15:20

Pitaliumの補助ツールとして、テストの実行結果をブラウザ上で一覧できるアプリケーション「Pitalium Explorer」を合わせて提供しています。
ここでは、Pitalium Explorerを使ってテスト結果を閲覧する手順を説明します。

前提条件

本チュートリアルは、以下が用意された環境で実行することを想定しています。

  • Tomcat 7

Pitalium Explorerの起動

  1. Pitalium ExplorerはPitaliumに同梱されています。
     Pitalium(ダウンロードページ)
     pitalium.zipを解凍したフォルダのpitalium_x.x.x/pitalium-explorer-x.xx.x/にアクセスします。
  2. pitalium-explorer.warを ${Tomcatのホームディレクトリ}/webapps フォルダにコピーします。
  3. ${Tomcatのホームディレクトリへのパス}/bin/startup.bat を実行し、Tomcatを起動します。
  4. ブラウザを開き、http:localhost:8080/pitalium-explorer/list.html にアクセスします。
    Pitalium Explorerの画面が表示されればOKです。

テスト結果データのインポート

  1. Pitaliumのテスト実行結果ファイルを用意します。置き場所は任意です。
    テスト結果フォルダ以下の全てのファイルが必要です。テスト結果フォルダは次のような構成になっています。
      results(任意に指定したテスト結果フォルダ。デフォルトはpitalium/results)
      ├ テスト結果ID(デフォルトはタイムスタンプ)
      │└ テストメソッド名
      │ ├ スクリーンショットID.png
      │ └ スクリーンショットID.json
      └ currentExpectedIds.json
  2. ${Tomcatのホームディレクトリ}/webapps/pitalium-explorer/WEB-INF/classes/explorerPersisterConfig.json を任意のテキストエディタで開きます。
  3. "resultDirectory" のパスを、Pitaliumのテスト実行結果ファイルのある場所のパスに書き換えます。
    "resultDirectory"は複数指定することができ、result1, result2, ... にそれぞれ"resultDirectory"を指定できる。
    ここで指定したフォルダの直下にテスト結果IDのフォルダが存在するようにしてください。
    ex) 1. の例であれば、C:/workspace/mytest(パスは自身の環境に合わせてください)/results のように指定します。
  4. Tomcatを再起動します。
    ${Tomcatのホームディレクトリへのパス}/bin/shutdown.bat を実行して一度停止した後、
    ${Tomcatのホームディレクトリへのパス}/bin/startup.bat を実行して再び起動して下さい。
  5. ブラウザを開き、http:localhost:8080/pitalium-explorer/list.html にアクセスします。
    テスト結果のリストが表示されていれば、正しく設定できています。

Pitalium Explorerの画面の見方

リスト画面(list.html)

テスト結果一覧

http://localhost:8080/pitalium-explorer/list.html にアクセスすると、指定したフォルダに置かれているテスト結果がリスト表示される。

テスト結果サマリー

list_min.png

ページを開いた直後は、テスト結果のサマリーのみが一覧で表示される。表示内容は次の通り。

【1】タイムスタンプ(テストID)
【2】テスト成功数/テスト実行総数
【3】【1】をバーで表示したもの
【4】結果マーク

  • 結果マーク… チェック:全テスト成功、×:失敗テストあり、無印:SET_EXPECTEDモードで実行

【5】任意の画像比較画面を表示

  • 比較ページについては<任意の画像比較画面>を参照

【6】表示する結果フォルダの切り替え

  • explorerPersisterConfig.jsonに記述してあるresultDirectoryを切り替える

スクリーンショット毎のテスト(画像比較)結果

list_open_min.png

「テスト実行結果」と「ブラウザ間比較」でタブ切り替えを行える。
タブ選択で「テスト実行結果」を選択。サマリーをクリックすると、その回のテストの全ての実行結果が一覧表示される。表示内容は次の通り。
【1】テストクラス名
【2】テストメソッド名
【3】スクリーンショットID
【4】OS
【5】ブラウザ
【6】ブラウザのバージョン
【7】結果マーク

リストの各行をクリックすると、画像比較ページが開く。(比較ページについては<画像比較画面の見方>を参照)

ブラウザ間の比較

list_browser_diff_run_min.png

「テスト実行結果」と「ブラウザ間比較」でタブ切り替えを行える。
タブ選択で「ブラウザ間比較」を選択。正解結果と比較対象の結果を選択して「Run」をクリックすると、選択した画像同士の類似度計算を行う。表示内容は次の通り。
【1】結果画像
【2】類似度
【3】相違数
【4】ブラウザ間比較画面を表示

「Detail」をクリックすると、ブラウザ間比較ページが開く。(ブラウザ間比較ページについては<ブラウザ間比較画面>を参照)

画像比較画面(diff.html)

diff_min.png

リスト画面で任意の実行結果をクリックすると、テスト結果画像の比較画面が表示される。

結果ツリー

【1】左側に、その回に実行したテスト(選択したブラウザ分のみ)がツリー表示される。

表示内容は次の通り。
 テストクラス
  └ テストメソッド
    └ スクリーンショットID 画像アイコン
 # 画像アイコン… 青が正解画像、赤が今回の結果画像。
          どちらかしか存在しない場合は、存在する画像のみアイコンが濃くなっている。

画像比較

比較結果情報

右側上部の「Result Information」部分に、比較結果の詳細が表示される。表示内容は次の通り。
【2】Comparison Result:選択中の画像の比較結果。一致(=テスト成功)ならチェック、不一致なら×、画像が一方しかなく比較できない場合は-。
【3】Expected:比較対象の正解画像の情報。
【4】Actual:今回の実行結果の情報。

ターゲット

【5】Pitaliumでは、一度の撮影で複数のターゲットを指定できる。

比較結果情報の下のセレクトボックスで、撮影時に指定したどのターゲットを表示するか指定できる。

画像比較ビュー

正解画像と実行結果画像を5つのビューで比較できる。2枚の画像が一致しない場合は、差分がある場所に赤い枠が表示される。
ビューの種類は次の通り。
【6】Quick flipping:上部の「Expected」「Actual」のタブをクリックすることで、表示する画像を切り替える。
【7】2-up:2枚の画像を左右に並べて見る。
【8】Swipe:スライダーの左右で画像が切り替わる。右に動かすとACTUAL、左に動かすとEXPECTEDが表示される。
【9】Onion skin:スライダーを動かすと徐々に画像が切り替わる。右に動かすとACTUAL、左に動かすとEXPECTEDが表示される。
【10】Edge overlapping:2枚のエッジ(輪郭)だけを抽出した画像が重ねて表示される。線が黒い部分は一致、青い部分はExpectedのみ、赤い部分はActualのみ。

任意の結果同士を比較

【11】ページ上部の「Actions」ボタンを押し、「Select Executions」を選択すると、結果選択ウィンドウが表示される。

使い方は次の通り。
1) 正解画像とする結果の「Expected」ボタンを押す。
2) 比較対象とする結果の「Actual」ボタンを押す。
3) 「Select」ボタンを押す。
4) 1)と2)で指定したもの同士の比較結果が表示される。

ブラウザ間比較画面(browserDiff.html)

browser_diff_min.png

リスト画面で任意の実行結果をクリックすると、テスト結果画像のブラウザ間比較画面が表示される。

ブラウザ間比較

差分がある場所に赤い枠が表示される。
【1】表示する相違箇所のカテゴリを選択

  • Shift… 配置の相違
  • Missing… 欠落による相違
  • Object size… オブジェクトサイズの相違
  • Font style… フォントの種類やサイズの相違
  • Ambiguous… あいまいな相違

【2】相違箇所の色の濃さを調整
【3】画像サイズを調整
【4】表示する相違箇所の閾値を調整

任意の画像比較画面(fileDiff.html)

file_diff_min.png

【1】「Executions」ボタンを押すと、結果選択ウィンドウが表示される。
【2】比較したい画像をクリックする。EXPECTEDとACTUALで指定したもの同士の比較結果が表示される。

また、任意の画像を右側のビューにドラッグ&ドロップすることで画像をアップロードして比較することができる。

画像比較ビュー

正解画像と実行結果画像を5つのビューで比較できる。2枚の画像が一致しない場合は、差分がある場所に赤い枠が表示される。
ビューの種類は次の通り。
【3】Quick flipping:上部の「Expected」「Actual」のタブをクリックすることで、表示する画像を切り替える。
【4】2-up:2枚の画像を左右に並べて見る。
【5】Swipe:スライダーの左右で画像が切り替わる。右に動かすとACTUAL、左に動かすとEXPECTEDが表示される。
【6】Onion skin:スライダーを動かすと徐々に画像が切り替わる。右に動かすとACTUAL、左に動かすとEXPECTEDが表示される。
【7】Edge overlapping:2枚のエッジ(輪郭)だけを抽出した画像が重ねて表示される。線が黒い部分は一致、青い部分はExpectedのみ、赤い部分はActualのみ。


Copyright (C) 2012-2017 NS Solutions Corporation, All Rights Reserved.