Как реализовать параметризованные тесты JUnit 4 в JUnit 5?JAVA

Программисты JAVA общаются здесь
Anonymous
Как реализовать параметризованные тесты JUnit 4 в JUnit 5?

Сообщение Anonymous »

В JUnit 4 было легко тестировать инварианты для множества классов с помощью аннотации @Parameterized. Ключевым моментом является то, что набор тестов выполняется с одним списком аргументов.

Как повторить это в JUnit 5 без использования JUnit-vintage?

@ParameterizedTest неприменимо к тестовому классу. @TestTemplate звучит так, как будто это может быть уместно, но цель этой аннотации также является методом.



Пример такого теста JUnit 4:

@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(){
...
}
}


Подробнее здесь: https://stackoverflow.com/questions/468 ... in-junit-5

Вернуться в «JAVA»