JUnitのAssertJの使い方

JUnitのAssertJの使い方

JUnitの検証でよく使うAssertJの使い方です。以下などをstaticインポートしておきます。

文字列の検証はisEqualToメソッド

文字列はassertThat(“文字列”).isEqualToメソッドで検証します。

nullの検証はisNullメソッド

値がnullの場合の検証はisNullメソッドを使用します。null出ない場合の検証はisNotNullメソッドを使用します。

文字列が含まれている場合の検証はcontainsメソッド

文字列が含まれている場合の検証はcontainsメソッドを使用します。

文字列の最初の文字列の検証はstartsWithメソッド

startsWithメソッドの引数で始まる文字列であるかどうかを検証します。startsWithの否定はdoesNotStartWithメソッドです。

文字列の最後の文字列の検証はendsWithメソッド

endsWithメソッドの引数で終わっている文字列であるかどうかを検証します。endsWithの否定はdoesNotEndWithメソッドです。

真偽値の比較はisTrue,isFalse

真偽値はassertThatのisTrue,isFalseメソッドで検証します。

数値範囲の検証はisBetweenメソッド

数値が範囲内であるかどうかの検証はisBetweenメソッドで検証します。intでもlongでもIntegerでもLongでも検証可能です。

isCloseToメソッドでも範囲の検証が可能です。withinを使います。

第一引数 第二引数
基底値(10) ±値(2)

上記だと、10±2の範囲(8~12)なら検証はOKです。

コレクションのサイズはhasSizeメソッド

コレクションのサイズはhasSizeメソッドで検証します。

LocalDateの検証

LocalDateを検証するにはisEqualToメソッドで検証が可能です。引数にはLocalDateのインスタンスを渡す必要があります。

LocalDateTimeの検証

LocalDateTimeの検証もLocalDateと同じく、isEqualToメソッドで行います。

どのクラスのインスタンスかを検証するにはisInstanceOf

インスタンス変数がどのクラスのインスタンスかを検証するにはisInstanceOfメソッドを使用します。

インスタンスのリストを検証するにはextracting

インスタンスのリストを検証するにはextractingメソッドを使用します。

例えば従業員クラスのインスタンスのリストの検証をしたい場合に各フィールドの値を検証することが可能です。これはとても便利です。

tupleで異なる型のフィールドを一括で検証

assertJを使えばtuple(タプル)が使えます。オブジェクトの異なる型の各フィールドを一度に検証することが可能です。containsExactlyメソッドは順序が関係あるので、任意の順序で検証したい場合はcontainsExactlyInAnyOrderメソッドを使います。

例外発生しないことを検証する

テストで例外発生しないことを検証するにはassertThatCodeのdoesNotThrowAnyExceptionメソッドを使用します。

コレクションクラスのすべての値をelmentで検証

要素が複数あり、かつ、その値を検証したい場合element(要素番号)で最初の要素を取得できます。

hasFieldOrProperty、hasFieldOrPropertyWithValueメソッドで検証可能ですが、containsExactlyとtupleの方が便利です。

フィルターした要素だけを検証するfilteredOn

コレクション要素のうち、特定条件の要素のみテストしたい場合はfilteredOnメソッドで要素を特定しておきます。

POJOの全フィールドの検証をするisEqualToComparingFieldByField

isEqualToComparingFieldByFieldメソッドで全フィールドがいっちしいるかの検証をすることができます。

スポンサーリンク
  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA