Wie implementiert man JUnit 4-parametrisierte Tests in JUnit 5?Java

Java-Forum
Anonymous
 Wie implementiert man JUnit 4-parametrisierte Tests in JUnit 5?

Post by Anonymous »

In JUnit 4 war es mithilfe der Annotation @Parameterized einfach, Invarianten über eine Reihe von Klassen hinweg zu testen. Der Schlüssel liegt darin, dass eine Sammlung von Tests anhand einer einzelnen Liste von Argumenten ausgeführt wird.

Wie kann man dies in JUnit 5 replizieren, ohne JUnit-vintage zu verwenden?

Code: Select all

@ParameterizedTest
ist nicht auf eine Testklasse anwendbar. @TestTemplate klang, als ob es angemessen wäre, aber das Ziel dieser Annotation ist auch eine Methode.



Ein Beispiel für einen solchen JUnit 4-Test ist:

Code: Select all

@RunWith( Parameterized.class )
public class FooInvariantsTest{

@Parameterized.Parameters
public static Collection data(){
return new Arrays.asList(
new Object[]{ new CsvFoo() ),
new Object[]{ new SqlFoo() ),
new Object[]{ new XmlFoo() ),
);
}

private Foo fooUnderTest;

public FooInvariantsTest( Foo fooToTest ){
fooUnderTest = fooToTest;
}

@Test
public void testInvariant1(){
...
}

@Test
public void testInvariant2(){
...
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post