Asercje
JUnit 5 dostarcza (za pomocą klasy org.junit.jupiter.api.Assertions) kilku podstawowych asercji:
assertEquals
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.Test;
class AssertionsDemo {
@Test
public void assertEqualsTest() {
assertEquals(2, 2);
}
@Test
public void assertEqualsWithMessageTest() {
assertEquals(2, 2, "Two should equal two");
}
}
assertTrue
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.Test;
class AssertionsDemo {
@Test
public void assertTrueTest() {
assertTrue(true);
}
}
Grupowanie asercji
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertAll;
import org.junit.jupiter.api.Test;
class AssertionsDemo {
@Test
public void assertAllTest() {
Person person = new Person("John", "Doe");
assertAll("person",
() -> assertEquals("John", person.getFirstName()),
() -> assertEquals("Doe", person.getLastName())
);
}
}
Wyrażenia lambda
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.Test;
class AssertionsDemo {
@Test
public void lambdaExpressionTest() {
int a = 2;
assertEquals(2, a, () -> "Expected that a (" + a + ") will be equal to 2");
}
}
Zadanie #1
Napisać testy jednostkowe do klasy com.infoshareacademy.jjdd3.Person.
Zadanie #2
Napisać testy jednostkowe do klasy com.infoshareacademy.jjdd3.FahrenheitConverter.
Zadanie #3
Napisać własną klasę Calculator posiadającą 4 podstawowe metody:
- add - dodaje dwie liczby całkowite
- subtract - odejmuje od siebie dwie liczby całkowite
- divide - dzieli pierwszą liczbę całkowitą przez drugą
- multiply - mnoży dwie liczby całkowite przez siebie
Do wszystkich czterech metod napisać odpowiednie testy jednostkowe.