AssertJ List Methods - AssertJ 155

AssertJ List Methods – AssertJ 155

AssertJ List Methods

為用 Java 編寫的測試程式提供了流暢的斷言語句,這些斷言語句通常與 JUnit 測試一起使用, AssertJ 斷言的基本方法是 assertThat 方法,善用 AssertJ List Java Methods 將有助於驗證效率的提升,本篇增加了範例,並透過單元測試來驗證產出結果。

檔案目錄

./
   +- src
       +- test
       |   +- org
       |       +- ruoxue
       |           +- spring_boot_168
       |               +- test
       |                   +- assertj
       |                       +- list
       |                           +- AssertJListMethodsTest.java   

單元測試

AssertJ Array Methods Java 斷言陣列的主要目的是取得陣列的正確元素以進行斷言。

isNull

驗證是否為空值,若不成立,則會拋出 AssertionError 。

	@Test
	public void isNull() {
		List<String> list = null;
		System.out.println(list);
		assertThat(list).isNull();

		List<Integer> intList = null;
		System.out.println(intList);
		assertThat(intList).isNull();
	}
null
null

isNotNull

AssertJ List Methods Java 驗證是否不為空值,若不成立,則會拋出 AssertionError

	@Test
	public void isNotNull() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		System.out.println(list);
		assertThat(list).isNotNull();

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		System.out.println(intList);
		assertThat(intList).isNotNull();
	}
[Apple, Banana, Cherry]
[6, 7, 8, 9, 10]

isEmpty

AssertJ List Methods Java 驗證是否為空集合,若不成立,則會拋出 AssertionError 。

	@Test
	public void isEmpty() {
		List<String> list = new ArrayList<>();
		System.out.println(list);
		assertThat(list).isEmpty();

		List<Integer> intList = new ArrayList<>();
		System.out.println(intList);
		assertThat(intList).isEmpty();
	}
[]
[]

isNotEmpty

AssertJ List Methods Java 驗證是否不為空集合,若不成立,則會拋出 AssertionError 。

	@Test
	public void isNotEmpty() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		System.out.println(list);
		assertThat(list).isNotEmpty();

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		System.out.println(intList);
		assertThat(intList).isNotEmpty();
	}
[Apple, Banana, Cherry]
[6, 7, 8, 9, 10]

isNullOrEmpty

AssertJ List Methods Java 驗證是否為空值或為空集合,若不成立,則會拋出 AssertionError 。

	@Test
	public void isNullOrEmpty() {
		List<String> list = null;
		System.out.println(list);
		assertThat(list).isNullOrEmpty();
		list = new ArrayList<>();
		System.out.println(list);
		assertThat(list).isNullOrEmpty();

		List<Integer> intList = null;
		System.out.println(intList);
		intList = new ArrayList<>();
		System.out.println(intList);
		assertThat(intList).isNullOrEmpty();
	}
null
[]
null
[]

isEqualTo

AssertJ List Methods in Java 驗證元素是否相等,若不成立,則會拋出 AssertionError 。

	@Test
	public void isEqualTo() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = Arrays.asList("Apple", "Banana", "Cherry");
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isEqualTo(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		List<Integer> intList2 = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isEqualTo(intList2);
	}
[Apple, Banana, Cherry]
[Apple, Banana, Cherry]
[6, 7, 8, 9, 10]
[6, 7, 8, 9, 10]

isNotEqualTo

AssertJ List Methods in Java 驗證元素是否不相等,若不成立,則會拋出 AssertionError 。

	@Test
	public void isNotEqualTo() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = Arrays.asList("Apple", "Banana");
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isNotEqualTo(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		int[] intList2 = new int[] { 1, 2, 3 };
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isNotEqualTo(intList2);
	}
[Apple, Banana, Cherry]
[Apple, Banana]
[6, 7, 8, 9, 10]
[6, 7, 8]

isSameAs

AssertJ List Functions in Java 驗證實例是否相等,若不成立,則會拋出 AssertionError 。

	@Test
	public void isSameAs() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = list;
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isSameAs(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		List<Integer> intList2 = intList;
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isSameAs(intList2);
	}
[Apple, Banana, Cherry]
[Apple, Banana, Cherry]
[6, 7, 8, 9, 10]
[6, 7, 8, 9, 10]

isNotSameAs

AssertJ List Functions in Java 驗證實例是否不相等,若不成立,則會拋出 AssertionError 。

	@Test
	public void isNotSameAs() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = new ArrayList<>(list);
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isNotSameAs(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		List<Integer> intList2 = new ArrayList<>(intList);
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isNotSameAs(intList2);
	}
[Apple, Banana, Cherry]
[Apple, Banana, Cherry]
[6, 7, 8, 9, 10]
[6, 7, 8, 9, 10]

AssertJListMethodsTest.java

AssertJ List Methods in Java 新增單元測試,驗證是否符合預期。

package org.ruoxue.spring_boot_168.test.assertj.list;

import static org.assertj.core.api.Assertions.*;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

import org.junit.jupiter.api.Test;

public class AssertJListMethodsTest {

	@Test
	public void isNull() {
		List<String> list = null;
		System.out.println(list);
		assertThat(list).isNull();

		List<Integer> intList = null;
		System.out.println(intList);
		assertThat(intList).isNull();
	}

	@Test
	public void isNotNull() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		System.out.println(list);
		assertThat(list).isNotNull();

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		System.out.println(intList);
		assertThat(intList).isNotNull();
	}

	@Test
	public void isEmpty() {
		List<String> list = new ArrayList<>();
		System.out.println(list);
		assertThat(list).isEmpty();

		List<Integer> intList = new ArrayList<>();
		System.out.println(intList);
		assertThat(intList).isEmpty();
	}

	@Test
	public void isNotEmpty() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		System.out.println(list);
		assertThat(list).isNotEmpty();

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		System.out.println(intList);
		assertThat(intList).isNotEmpty();
	}

	@Test
	public void isNullOrEmpty() {
		List<String> list = null;
		System.out.println(list);
		assertThat(list).isNullOrEmpty();
		list = new ArrayList<>();
		System.out.println(list);
		assertThat(list).isNullOrEmpty();

		List<Integer> intList = null;
		System.out.println(intList);
		intList = new ArrayList<>();
		System.out.println(intList);
		assertThat(intList).isNullOrEmpty();
	}

	@Test
	public void isEqualTo() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = Arrays.asList("Apple", "Banana", "Cherry");
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isEqualTo(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		List<Integer> intList2 = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isEqualTo(intList2);
	}

	@Test
	public void isNotEqualTo() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = Arrays.asList("Apple", "Banana");
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isNotEqualTo(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		int[] intList2 = new int[] { 1, 2, 3 };
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isNotEqualTo(intList2);
	}

	@Test
	public void isSameAs() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = list;
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isSameAs(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		List<Integer> intList2 = intList;
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isSameAs(intList2);
	}

	@Test
	public void isNotSameAs() {
		List<String> list = Arrays.asList("Apple", "Banana", "Cherry");
		List<String> list2 = new ArrayList<>(list);
		System.out.println(list);
		System.out.println(list2);
		assertThat(list).isNotSameAs(list2);

		List<Integer> intList = Stream.of(6, 7, 8, 9, 10).collect(Collectors.toList());
		List<Integer> intList2 = new ArrayList<>(intList);
		System.out.println(intList);
		System.out.println(intList2);
		assertThat(intList).isNotSameAs(intList2);
	}
}

心得分享

AssertJ List Functions in Java 是一個 Java 庫,提供了一組豐富的斷言和真正有用的錯誤訊息,驗證 List 是否為空值、空集合、指定類別實例、元素相等, 提高了測試程式碼的可讀性,使用 AssertJ List Methods in Java 流式斷言,提高了測試程式碼的可讀性。

發佈留言