[AssertJ]サポート(assertThrownbyの追加が必要)
AssertJはJavaテストで使用されるライブラリです.
累積を使用するには、
他のライブラリとは異なり、次のコードは実際には何も断言せず、テストに失敗することはありません.
オブジェクトは、さまざまな方法で比較できます.
ここでは、2つのオブジェクトが同じかどうかを判断する方法を2つ紹介します.
1.
対象の内容を比較したい場合は、
2.
真偽を判断できる.
IterableまたはArrayのassertメソッド
1.指定された要素が含まれているかどうかは空ですか は、与えられた要素で始まるか、 であるか.
文字を比較したり、Unicodeであることを確認したりすることができます.
クラスブレークスルーの大部分は、フィールド、クラスタイプ、宣言、クラスの終了性に関する確認です.
https://assertj.github.io/doc/#assertj-core-exception-assertions-assertThatThrownBy
Describing Assertions
Java 8
Writing Assertions
累積を使用するには、
Assertions.assertThat()
にオブジェクトを渡す必要があります.他のライブラリとは異なり、次のコードは実際には何も断言せず、テストに失敗することはありません.
// 추가 시 'Assertions.' 생략 가능
import static org.assertj.core.api.Assertions.*;
assertThat(ansyReferenceOrValue);
Object Assertions
オブジェクトは、さまざまな方法で比較できます.
ここでは、2つのオブジェクトが同じかどうかを判断する方法を2つ紹介します.
1.
isEqualTo
public class Dog {
private String name;
private Float weight;
// standard getters and setters
}
Dog fido = new Dog("Fido", 5.25);
Dog fidosClone = new Dog("Fido", 5.25);
assertThat(fido).isEqualTo(fidosClone);
isEqualTo()
は、比較対象の参照により失敗した.対象の内容を比較したい場合は、
isEqualToComparingFieldByFieldRecursively()
を使用します.2.
isEqulaToComparingFieldByFieldRecursively()
assertThat(fido).isEqualToComparingFieldByFieldRecursively(fidosClone);
Boolean Assertions
真偽を判断できる.
isTrue()
isFalse()
assertThat("".isEmpty()).isTrue();
Iterable/Array Assertions
IterableまたはArrayのassertメソッド
1.指定された要素が含まれているかどうか
List<String> list = Arrays.asList("1", "2", "3");
assertThat(list).contains("1");
assertThat(list).isNotEmpty();
assertThat(list).startsWith("1");
1つのオブジェクトに対して、複数のブレークスルーを簡単にマージできます.assertThat(list)
.isNotEmpty()
.contains("1")
.doesNotContainNull()
.containsSequence("2", "3");
Character Assertions
文字を比較したり、Unicodeであることを確認したりすることができます.
assertThat(someCharacter)
.isNotEqualTo('a') // a가 아닌지
.inUnicode() // 유니코드인지
.isGreaterThanOrEqualTo('b') // 'b'보다 크고
.isLowerCase(); // 소문자인지
Class Assertions
クラスブレークスルーの大部分は、フィールド、クラスタイプ、宣言、クラスの終了性に関する確認です.
// Runnalbe 클래스가 인터페이스인지 확인
assertThat(Runnable.class).isInterface();
// 한 클래스가 다른 클래스에 할당 가능한지
assertThat(Exception.class).isAssignableFrom(NoSuchElementException.class);
このほか、ファイル、数値、入力ストリーム、Throwableなどにも使用できます.AssertThatThrownBy
https://assertj.github.io/doc/#assertj-core-exception-assertions-assertThatThrownBy
Describing Assertions as
を使用して、アサーションをカスタマイズできます.
as(String description, Object... args)
assertThat(person.getAge())
.as("%s's age should be equal to 100", person.getName())
.isEqualTo(100);
上記のように定義すると、以下のテスト結果が得られます.[nakkim's age should be equal to 100] expected:<100> but was: <34>
Java 8
AssertJはJava 8の関数式プログラミング機能を使用することができる.// Java 7
assertThat(fellowshipOfTheRing)
.filteredOn("race", HOBBIT)
.containsOnly(sam, frodo, pippin, merry);
// Java 8
assertThat(fellowshipOfTheRing)
.filteredOn(character -> character.getRace().equals(HOBBIT))
.containsOnly(sam, frodo, pippin, merry);
リファレンス
https://www.baeldung.com/introduction-to-assertj
Reference
この問題について([AssertJ]サポート(assertThrownbyの追加が必要)), 我々は、より多くの情報をここで見つけました
https://velog.io/@kdkeiie8/AssertJ-Assertions
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
// Java 7
assertThat(fellowshipOfTheRing)
.filteredOn("race", HOBBIT)
.containsOnly(sam, frodo, pippin, merry);
// Java 8
assertThat(fellowshipOfTheRing)
.filteredOn(character -> character.getRace().equals(HOBBIT))
.containsOnly(sam, frodo, pippin, merry);
Reference
この問題について([AssertJ]サポート(assertThrownbyの追加が必要)), 我々は、より多くの情報をここで見つけました https://velog.io/@kdkeiie8/AssertJ-Assertionsテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol