assertj 3.0.0 が良い
Java 8 前提になっていて、非常に良い感じになっている。 Java 8 の Date & Time に標準対応した上に、様々なエンハンスメントが入っている。
中でも注目すべきは例外関連の機能追加である。 例外をこのコードが投げているの?みたいなのを簡単に書けるようになっている。 この機能は、今まで自前で実装していたが、自前でやらなくて良くなったので便利だといえる。
@Test
public void testException() {
assertThatThrownBy(() -> { throw new Exception("boom!") }).isInstanceOf(Exception.class)
.hasMessageContaining("boom");
}