開発者ブログ

04.基本的なテストの実行方法

Last modified by ishikawa on 2016/03/25, 21:03

このページでは Pitalium を利用したテストの実行設定と結果出力について示します。

テスト実行時の設定

テスト実行モード

このテストライブラリには3つの実行モードが存在します。 TAKE_SCREENSHOT, SET_EXPECTED, RUN_TEST です。標準動作は SET_EXPECTED になっています。SET_EXPECTED モードで比較の期待値となるスクリーンショット画像の情報を保存し、 RUN_TEST モードではその情報を元にテストを行います。それぞれの詳細はこちらに記載されています。

実行モードを変更する方法は2つあります。1つ目は設定用のファイルを編集することです。
src/main/resourcesディレクトリ直下にある environmentConfig.json を開き、execModeプロパティを設定します。

{
 "execMode": "RUN_TEST"
}

もう1つの方法はテスト実行時の実行引数に設定する方法です。

-Dcom.htmlhifive.pitalium.execMode=RUN_TEST

実行モードを上の2つのどちらでも指定しない場合は SET_EXPECTED モードとして動作します。
設定ファイル、実行引数の両方で指定した場合は実行引数で指定したモードで操作します。

Selenium Grid ハブサーバーの変更

チュートリアル第2章ではローカル上に Selenium Grid ハブサーバーを立てました。ローカル以外の環境に構築する場合は次の様に environmentConfig.json のプロパティを設定します。

{
 "hubHost": "192.168.xxx.xxx",
 "hubPort": 4444
}

テスト実行結果

PtlTestBaseを継承したクラスのテストでは、テストを実行すると、ケース中に撮影したスクリーンショットとその情報を results ディレクトリ下に出力します。resultsディレクトリに出力される構成は以下の通りです。

results
  ├テスト実行日時
  │  └テストクラス名
  │      ├result.json
  │      ├スクリーンショットID毎の結果(JSON)
  │      ├スクリーンショットID毎の全体スクリーンショット(PNG)
  │      └スクリーンショットID毎のスクリーンショット(PNG)
  └currentExpectedIds.json

各JSONやスクリーンショット画像の詳細はこちらに記載されています。

currentExpectedIds.json

currentExpectedIds.jsonは正解となるスクリーンショットを記録しているファイルです。
SET_EXPECTEDモードでテストを実行することで最新の正解スクリーンショット情報が更新されます。

スクリーンショットID毎の結果(JSON)

各ブラウザとテストメソッド毎にスクリーンショット撮影情報を記録しているファイルです。
以下の様な名前で保存されています。

テストメソッド_スクリーンショットID_WINDOWS_firefox_38.json

result.json

各テストクラス毎のスクリーンショット撮影結果を記録しているファイルです。
RUN_TESTモード時は画像比較結果も含まれています。

スクリーンショットID毎のスクリーンショット(PNG)

assertViewを実行して撮影されたスクリーンショットです。スクリーンショットは必ずその時の全体のスクリーンショット画像と、指定した条件のスクリーンショットの2枚以上が保存されます。以下の様な名前で保存されます。

テストメソッド_スクリーンショットID_WINDOWS_firefox_38_TAG_NAME_body_[0].json

次のステップ ⇒ 05.DOM要素のスクリーンショット

参照


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