Gaugeを使って自動テストしてみた

(この記事は「CRESCO Advent Calendar 2019」21日目の記事です。)

こんにちは、システムズエンジニアリングセンターの山口です。
この記事ではGaugeとSeleniumを利用した自動テストについて紹介します。

Gaugeとは

公式サイト: https://gauge.org/
GaugeはPythonやJavaなど幅広い言語に対応した自動テストフレームワークです。
テストの実装とテスト仕様書を分離して記述し実行することができます。

Gaugeの良さ

  • テストコードが書かれていれば、日本語を使って自動テストを行うことができます。
  • Markdownで書かれているため、プレビュー表示でテスト仕様書のレビューを行うことができます。

インストール

https://docs.gauge.org/getting_started/installing-gauge.html
Windowsの場合はインストーラをダウンロードして実行、
Macの場合はHomebrewからインストールします。
今回はJavaで記述するため、Intellij Ideaにプラグインをインストールします。

実践

今回はGoogleで検索を行い、遷移後のタイトルが正しく設定されているかのテストを行いました。

テストコード

テストコードに@Stepアノテーションを記述することでStepを定義します。
<値>を記述することで変数を定義することもできます。

テスト仕様書

テスト仕様書はMarkdownで記述することができ、テストコードで作成したStepにパラメータを設定して作成します。
今回は成功ケースと失敗ケースの2つを用意しました

動かしてみる

テスト仕様書通りにブラウザが操作されていることがわかります。
テスト結果はエディタに表示されるほか、HTMLのレポートとして出力することもできます。

他にもStepをまとめてConceptとしてまとめる機能やテーブルに記載したパラメータでテストを実施する事など多数の機能がありますが、今回は割愛させていただきます。

まとめ

Gaugeを使うことでテストコードの実装者と自動テスト仕様書の作成者を分けることができ、テストコードを書くことに不慣れな方でもブラウザの自動テストができるようになりました。

技術Blogを今回初めて書きまだまだ不慣れなこともたくさんありますが今後もよろしくお願いいたします。

  • このエントリーをはてなブックマークに追加