JUnit Quickie: Wie können die Testmethoden einer Klasse automatisch in zufälliger Reihenfolge (Pseudozufall) ausgeführt werden?

Wie können die Testmethoden einer Klasse automatisch in zufälliger Reihenfolge ausgeführt werden? Ab JUnit 5.4 geht das mit der Annotation @TestMethodOrder. Es wird nur die @TestMethodOrder(MethodOrderer.Random.class) Annotation an der jeweiligen Test-Klasse benötigt. Die Zufallsfunktion wird mit Hilfe der System.nanoTime() Funktion erzeugt. Also ein Pseudozufall. Aber für Test reicht es.

JUnit Quickie: Wie können die Testmethoden einer Klasse automatisch in zufälliger Reihenfolge (Pseudozufall) ausgeführt werden?

Wir verwenden diese Testklasse:

import org.junit.jupiter.api.MethodOrderer.Random;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;

/**
 * Test der Order Annotationen.
 * 
 * @author Thomas Wenzlaff
 *
 */
@TestMethodOrder(Random.class)
class OrderTest {

	@Test
	void aMethode() {
		System.out.println("a Methode im Code");
	}

	@Test
	void cMethode() {
		System.out.println("c Methode im Code");
	}

	@Test
	@Order(30)
	void bMethote() {
		System.out.println("b Methode im Code ");
	}
}

Und nun führen wir diese Klasse zweimal aus:

JUnit Quickie: Wie können die Testmethoden einer Klasse automatisch in zufälliger Reihenfolge (Pseudozufall) ausgeführt werden?

Die Methoden wurden in der Reihenfolge bca ausgeführt und beim zweiten mal

JUnit Quickie: Wie können die Testmethoden einer Klasse automatisch in zufälliger Reihenfolge (Pseudozufall) ausgeführt werden?

in der Reihenfolge cba.

Ähnliche Artikel:

  1. JUnit Quickie: Wie können die Testmethoden einer Klasse automatisch in alphabetischer Reihenfolge ausgeführt werden?
  2. JUnit Tests nun mit Methoden Reihenfolge via @Order Annotation möglich
  3. Rest Test Programm: Java Migration von JUnit 4 nach JUnit 5 (1.0.0.-M6)

wallpaper-1019588
Square Enix kündigt neues Smartphone-RPG in Kooperation mit Hiro Mashima an
wallpaper-1019588
[Comic] Venom by Donny Cates [2]
wallpaper-1019588
Portugal will schneller impfen
wallpaper-1019588
aniverse: Anime-Neuheiten im Mai 2021