JUnit5でテスト駆動開発デビュー
はじめに
JUnit5でassertEqualsとassertAllの使い方はユースケさんの動画を参考に勉強した。
この動画の良いところは、必要な知識をシンプルに説明してくれて、intellij IDEAのショートカットキーが画面下に出てくるので知りたいことを苦労せずに一度で手に入れられる。
assertEqualsとassertAll
assertEqualsメソッドは引数を2つ取り、期待する戻り値と実際の戻り値(調べたいメソッドに引数を渡したもの)を渡す。そのテストを書いたメソッドかクラスでテスト実行するとその結果が表示されるというもの。
テストを書いたメソッド内に複数のassertEqualsメソッドを記述すると、もしエラーを吐くテストがあった場合はエラーを吐き、その後のテストは実行しない仕様である。その為、記述順を工夫し、テスト難易度順に記述すればどの段階まで自分が実装したいメソッドを書けてるか判断することが出来る。
assertAllメソッドは可変長引数を受け取り、任意で最初の引数に文字列を渡してやれば、そのテストのタイトルを付けられ、エラー発生時にタイトル名が表示され、どれか判断しやすい。それ以降の引数には引数なしラムダ式でassertEqualsやその他確認したいテストメソッドを渡す。これは複数引数に渡すことができ、渡したテストは1番目で失敗しようが、2番目以降も確認してくれ、エラーを吐いたものに関して全て表示してくれる。その為、テスト難易度関係なく、全事象に対する結果を確認することが出来る。
これにて自作メソッドが期待通りの値を返すかのテストは記述することが出来るようになったので、以後使いながら開発していく。
都度、取り入れた方が良さそうなテスト手段は調べて取り入れていこうと思います。お勧めのテスト方法や、よく使うテスト方法ある方よかったら教えてください!よろしくお願いいたします。
この記事が気に入ったらサポートをしてみませんか?