画面キャプチャのファイル名(ひと工夫)
PageSaverでは、ファイル名にタイムスタンプや、画面のタイトルなどを指定できます。上記設定例では、画面のタイトル(%t)を指定しています。
しかし、1ケースあたり複数の画面キャプチャを取得したり、さらに複数のテストケースを一括実行すると、どの画面キャプチャファイルがどのテストケースのものなのか識別が難しくなります。もしも、case1_1.jpg、case1_2.jpg(ケース1の1枚目、2枚目)のように指定できると一目瞭然ですね。
そこで、画面タイトルをcase1_1、case1_2のように書き換えるJavaScriptをマクロに追加しました(キャプチャコマンドの後はタイトルが書き換わるため、verifyTitleコマンドの意味がなくなります。verifyTitleコマンドは遷移した時点で行えばよいです)。
タイトル変更コマンドは以下のようになります。マクロで埋めこみます。ただし、Firefoxで複数タブを開いているときはファイル名に反映できません。1ウインドウで1ページ表示した状態で実行してください。
コマンド | 対象 | 値 |
storeEval | javascript{window.top.frames[0].document.title='case8_1';true;} | なし |
サンプルマクロについて
改修、再配布は自由です。もし便利機能の追加などがありましたら、この記事にコメントとリンクを残してください。
おわりに
いかがでしたでしょうか?このようにExcelマクロ(VBA)を利用することで、試験ドキュメント作成からseleniumテストケース生成とテスト実施までを、グッと短縮できることがお分かりいただけると思います。もちろん試験設計の全てのニーズを満たすことはできないので、間に人手を介することもあるでしょう。みなさんの試験ニーズに合わせてテストケース自動生成マクロを作成してみてください。
次回はassert系コマンドを組み込む場合の例などを紹介する予定です。