Ich versuche parametrisierte Test in JUnit zu schreiben 5ObjectArrayArguments Klasse
@ParameterizedTest
@ArgumentsSource(TwoParameters.class)
public void test(int a, int b){
//some assert
}
static class TwoParameters implements ArgumentsProvider {
@Override
public Stream<? extends Arguments> provideArguments(ExtensionContext extensionContext) throws Exception {
return Stream.of(
ObjectArrayArguments.create(1, 2),
ObjectArrayArguments.create(3, 4));
}
}
Wie Sie sehen können, gibt es Testfunktion, die zwei Parameter übernimmt. Ich sah eine Methode mit @CsvSource
und diese Ich versuche, Methode oben zu verwenden, aber ich kann nicht zurückkehren, enthält Strom 2 Parameter für den Test.
ObjectArrayArguments
kann nicht aufgelöst werden. Wie importiere ich diese Klasse? Ich versuchte import org.junit.jupiter.params.provider.ObjectArrayArguments;
, aber es funktioniert nicht (Intelij sagt ‚lösen kann nicht Symbol ObjectArrayArguments‘)
Können Sie klären, wie "es funktioniert nicht"? Welchen Fehler bekommst du? – Mureinik
@Mureinik Ich bearbeite Frage –