Es muss ja nicht immer Fussball und Weltmeisterschaft sein! Neue Annotation für JUnit 5 – Tags sind auch spannend!

Mit den neuen Tags (org.junit.jupiter.api.Tag) können Methoden und auch ganze Klassen getagt werden, um sie z.B. in Gruppen einzuteilen.
Eine Testgruppe könnte z.B. eine langlaufende DB Methoden sein, die nicht immer ausgeführt werden soll.

Ein Tag muss folgenden Syntax Regeln folgen:

-ein Tag darf nicht Leer sein
-ein Tag darf keine Leerzeichen enthalten
-ein Tag darf keine ISO Kontroll Zeichen enthalten
-ein Tag darf kein, (, ), %, | oder ! Zeichen enthalten

Eine Testklasse zur WM 2018 könnte so aussehen:

/**
 * Fusballer Test mit DB und Repo.
 * 
 * @author Thomas Wenzlaff
 *
 */
@ExtendWith(SpringExtension.class)
@SpringBootTest
class FusballerRepositoryTest {

	@Autowired
	private FusballerRepository fusballerRepository;

	@Tag("DB-Test")
	@Test
	@DisplayName("Test mit Datenbank nach Name und Umlaute")
	void testGetFusballerByName() {
		List<Fusballer> fussballer = fusballerRepository.getFusballerByName("Müller");
		assertEquals(1, fussballer.size());
		assertEquals("Müller", fussballer.get(0).getName());
	}

	@Tag("DB-Test-Langläufer")
	@Test
	@DisplayName("Test mit Datenbank max. Anzahl")
	void testGetFusballerMax() {
		List<Fusballer> fussballer = fusballerRepository.findAll();
		assertEquals(11, fussballer.size());

	}

	@Tag("DB-Test")
	@Test
	@DisplayName("Test mit Datenbank max. Count")
	void testGetFusballerCount() {
		assertEquals(11, fusballerRepository.count());
	}

}

Unter Eclipse kann man nun alle Tests ausführen lassen, ausser die mit DB-Test-Langläufer getagten Methode:

Es muss ja nicht immer Fussball und Weltmeisterschaft sein! Neue Annotation für JUnit 5 – Tags sind auch spannend!

Das Ergebnis, es werden nur die zwei Methoden mit DB-Test Tag ausgeführt:

Es muss ja nicht immer Fussball und Weltmeisterschaft sein! Neue Annotation für JUnit 5 – Tags sind auch spannend!

Ähnliche Artikel:

  1. Wie kann eine Vaadin Spring Boot Anwendung in 15 Minuten auf JUnit 5 umgestellt werden?
  2. JUnit 5 @ParameterizedTest mit @ValueSource oder 3 Gründe warum man keine JUnit Tests schreiben sollte!
  3. Rest Test Programm: Java Migration von JUnit 4 nach JUnit 5 (1.0.0.-M6)

wallpaper-1019588
Wie entscheidend sind Fremdsprachenkenntnisse für eine erfolgreiche berufliche Karriere?
wallpaper-1019588
Anzeige gegen den Arbeitgeber – Kündigungsgrund?
wallpaper-1019588
Eddie Redmayne als Stephen Hawking in DIE ENTDECKUNG DER UNENDLICHKEIT
wallpaper-1019588
Domain mit .APP-Endung jetzt bei Domaintechnik.at registrieren
wallpaper-1019588
[Werbung] Mlle Agathe regenerierende Körpercreme mit 50 % Bio-Schneckenschleim-Extrakt
wallpaper-1019588
Oversize Cardigan Dress
wallpaper-1019588
Mein Video für euch: Schritt-für-Schritt zur Frühlingsdeko
wallpaper-1019588
Whatsappiamo!