テストがエラーになった時に画面キャプチャするuser-extensions.jsを作りました (2009/03/11更新)

スポンサーリンク

Seleniumでエラーとなった時に勝手に画面キャプチャとってくれたら解析に便利じゃないかなと思ってuser-extensions.jsを書いてみました。
ちなみに、Selenium RCでの実行時しか使えません。

上記をダウンロードし、ファイル名をuser-extensions.jsに変えて使用してください。
Selenium RCの起動オプション(-userExtensions)で、 "user-extensions.js"を指定して実行することにより、エラー発生時に画面のキャプチャが保存されるようになります。
キャプチャされた画像は、Selenium RCの起動ディレクトリ配下に、、

<テストスイート名>-<テストケース名>-<タイムスタンプ(ミリ秒).png

で保存されます。


user-extensions.jsと、それを確認するのに必要なファイルをまとめてサンプルとして下記に置いてあります。
(Selenium HTMLSuite Extensionを使う形になってます。)

解凍して、start.batを実行することにより簡単に試すことができます。


オプションとして、verifyが実行される度にキャプチャを取ることも可能です。
その場合には、ソース上のisCaptureEachVerifyをtrueにしてください。
確認が必要なところで、全てキャプチャを残すので、スライドショーにすれば、試験結果をムービーのように再生することも可能になります。


今回、これを作るに当たり、szk-takanoriさんの下記の記事を参考にさせていただきました。

ありがとうございました。

                                                  • -

追記@2009/02/21
verifyでエラーとなった時にキャプチャされない問題に対処しました。
id:szk-takanori さんからご報告いただきました。ありがとうございました。

                                                  • -

追記@2009/03/11
verifyでエラーとなった直後にキャプチャされるように変更しました。
また、オプションとして、verifyが実行される度にキャプチャする機能を追加しました。
id:szk-takanori さんに対処していただいたものを元に、こちらで取り込んでいます。ありがとうございました。