keizik.github.io

Java Unit Test Template

Example is using JUnit 5 and Mockito.

import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.Mockito.when;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension

@ExtendWith(value={MockitoExtension.class})
class UnitTest {
	private static final String CONSTANT = "A";
	@InjectMocks private Service service;
	@Mock private Dependency dependency;

	@Test
	void method() {
		when(dependency.doSomething(CONSTANT)).thenReturn(true);
		boolean result = service.method(CONSTANT);
		assertTrue(result);
	}

	@Test
	void failMethod() {
		assertThrows(Exception.class, () -> service.method(null);
	}

}

2023-03-30