LoginSignup
0
0

テスト自動化ツール「Karate」を導入する

Posted at

はじめに

REST APIをテストするため「Karate」を使ってみようと思い、VSCode拡張機能の「Karate Runner」を導入してみた記録です.

導入した環境&インストールしたもの

  • Windows 11(Windows 10でも問題ないです)
  • Visual Studio Code
  • JDK 11以降
  • Karate Runner (VSCode拡張機能)
  • karate.jar

インストール

JDK

下記 karate.jar の実行に使用します.
Java 11 以降を必要とするので、今回は Adoptium からJDK 17をダウンロードしました.

複数バージョンの入れ替えが簡単なのでZIPファイル版をダウンロードして使っています.

Visual Studio Code

karate.jar

「Karate Runner」で 「Karate Jar」の設定でシナリオを実行するときに使用します.

Karate Labsの GitHub から karate-1.4.0.jar を任意のディレクトリにダウンロードします.

Karate Runner

「Karate Runner」は、VSCodeを起動して拡張機能ビューの検索で「karate」と入力すると出てくるので、そこからインストールできます.
image.png
(一番目に表示されている「Karate」は、Karate Labsから出ている拡張機能ですが、ここでは二番目に表示されている「Karate Runner」のほうです。なぜかこちらのほうがダウンロード数が多く評価も高いです. Karate Labsのほうはアカウント登録すると使えるようになるモードがあるようですが支払いが発生するようなので確認してませんが:upside_down:

インストール後の設定など

プロジェクトの設定

Karateのfeatureファイルを置くプロジェクトのルートディレクトリに、ファイル名「karate.jar」でファイルを作成します.
初めて触ったときは、ここにはkarate.jar本体を置くものだと思っていたんですが、ファイル名が一致していれば中身がなくても大丈夫なようです(今後のアップデートで変わるかもしれないから要注意).

Karate Jarの設定

Karate Runner > Karate Jar: Command Line Args

ここでjavaコマンドのパスと、karate.jarのパスを設定します.

image.png

キーワードのハイライトと補完

「Karate Runner」をインストールしたあとで、拡張子が*.feature のファイルを開くとエディタが次の画像のような表示になります.
image.png

エンターキーを押したり、スペースキーでインデントしようとすると、コード補完できるようです.(タブキーでキーワードが確定される模様。エンターorスペースを入力した時点で補完が始まるので任意の場所で開始できるようにしてほしいな…)
補完.gif

追記: 環境によっては補完効かないかもしれない

拡張機能の設定について

シナリオを実行するとテスト結果のレポート(HTML)が生成されますが、自動的には開かないので拡張機能の設定でここにチェックを入れておくと、終了時にHTMLを開いてくれます.(実行のたびに開かれるのはイヤなので、ターミナルに表示されるリンクから開けるようになるといいかもしれない🦆)

image.png

感想と今後

エディタから直接シナリオを実行できるという点が良かったです.
書いたら即実行できるので、書き方に慣れていなくても試しながら書いていくことができて便利だなと思いました. 最終的にはMavenとかでテストを回していくことになると思いますが、テストが実行されるまで待った挙句、書き方ミスってて実行できなかった、というのは嫌だなと思うので.

今回は拡張機能の導入をしたところまでまとめましたが、今後は実際に使ってみてシナリオファイルの書き方のポイントなどをまとめていきたいと思っています.

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0