Тестуємо "юніти" (функції)
Тестуємо окремі елементи – без їх зв'язку з іншими
Якщо данні не збігаються з тестом, консоль стане червоною (1 test failed)
import static org.junit.Assert.assertEquals;
String obj1 = "Junit";
String obj2 = "Junit";
assertEquals(obj1, obj2); // 1 test passed
assertEquals(2, Main.Sum(1, 1));
або
Main obj = new Main();
assertEquals(2, obj.Sum(1, 1));
assertSame("Hello", "Hello");
assertNotSame("Hello", "World");
assertNotNull("Hello");
assertNull(null);
assertTrue(1 < 2);
assertArrayEquals(arr1, arr1);
Math.abs( expected – actual ) <= delta – для роботи з неточними типами даних
fail("Not yet implemented");
@Test // перевіряємо генерацію throw new IllegalArgumentException("blablabla"); public void summaryOfTheGeometricProgressionNumbersWithIllegalArgumentException() { assertThrows(IllegalArgumentException.class, () -> { FunctionsTask4.sumGeometricElements(100, -0.1, 20); }); }
Тестування класу (в одній з функцій є помилка)
public class Calculator { private int value; public Calculator() { this.value = 0; } public void add(int number) { this.value = this.value + number; } public void subtract(int number) { this.value = this.value + number; } public int getValue() { return this.value; } } import static org.junit.jupiter.api.Assertions.*; import org.junit.jupiter.api.Test; class CalculatorTest { @Test public void calculatorInitialValueZero() { Calculator calculator = new Calculator(); assertEquals(0, calculator.getValue()); } @Test public void valueFourWhenFourAdded() { Calculator calculator = new Calculator(); calculator.add(4); assertEquals(4, calculator.getValue()); } @Test public void valueMinusThreeWhenThreeSubstracted() { Calculator calculator = new Calculator(); calculator.subtract(3); assertEquals(-3, calculator.getValue()); } }