最近は少しずつテストファーストな開発を目指しつつある。まだまだ先は長いけど。 JUnitを使ってテストを行う時、対象メソッドがある例外をスローすることを確認したい場合、どうやればいいんだろう?とTestCaseのAPIを探してみたけど、それらしきメソッドがない。テキトーにJUnitでググってみたら、fail()を使った次のようなコードで実現できることが分かった。 次の例はテストメソッドがNullPointerExceptionをスローすれば成功となるような場合。 public void testMethodThrowsNullPointer() { try { testTargetObject.method(null); fail("この行が実行されたらエラー"); } catch (NullPointerException e) { //succeed } }
![JUnitで例外がスローされるのをテストする - OZACC.blog](https://cdn-ak-scissors.b.st-hatena.com/image/square/9e1b93330dd6e34d10b069bd47c2978c1c436b67/height=288;version=1;width=512/http%3A%2F%2Fblog.ozacc.com%2Fstatic%2Fimg%2Ficon%402x.png)