最近、Javaでの開発が増えて、たまにコーディングすることがあり、JUnitを使ってテストケースを作ることも多いです。
なので、覚え書きも含めて、JUnit の使い方など。
そんなに難しくもないので、そうそう忘れることはないですが。
基本的に、Eclipseを使えば、JUnitのプラグインも入っているので設定自体は何もいらないです。
適当にJavaプロジェクトを作成。
この時、使用するJREのバージョンを選択します。
今回は、適当に JavaSE-1.8 を選択。
テスト用に適当にクラスを作ってメソッドを実装。
今回は、2倍、3倍、4倍を返す適当なメソッドで(笑)
このクラスのメソッドをJUnitでテストコードを作成するには、目的のソースで右クリックして、[新規]->[その他] から [JUnit]->[JUnitテストケース] を選択。
テスト実装用のクラスを作成。
この時、対象のメソッドを選択すると、自動的に対応したメソッドを作ってくれます。
あとはメソッドを検証するようなコードを実装。
今回の場合は、戻り値を検証するコードを作成。
あとはこのテストコードを実行するだけ。
テストケース3件が実行され、そのうち2件がエラーとなっています。
(1件は正常、2件はわざとエラーになるようにしたので想定通り)
今回はテストコードのほうが間違っているので、テストコードを修正して再実行。
これでテストコードができました。
今後メソッドを改造することがあったら、このテストを実行することで、デグレードしていないかが簡単に検証できますね。
■ JUnitを JavaSE-11で使用しようとした場合にimportエラー
最初にJavaSE-11を使用してやった場合、なぜかJUnitのimportのエラーが解決できない問題にぶつかりました。
JavaSE-11 を選択してプロジェクトを作成。
同様にクラス・メソッドを実装して、そのクラスに対するテストクラスを作成。
すると…importの部分でエラーが発生。
「The type org.junit.jupiter.api.Assertions is not accessible.」
というエラーがどうやっても解決できず…。
ビルドパスを確認しても、JUnitのjarファイルパスは登録されていますし、謎です。
色々なサイトを見てみましたが、どうやらJavaSE-11の問題の可能性がありそうです。
同じ手順を JavaSE-1.8 でやってもエラーにならないので。