Adnotacje:

- @MethodSource

- @ValueSource

- @CsvSource

 

są indywidualnym wyborem programisty, w połączeniu z @ParameterizedTest, powinna występować tylko jedna z nich.

 

pseudokod wykorzystujący @MethodSource - dla osób, które lubią wyzwania

 

```

@ParameterizedTest

@MethodSours

shouldException(Map filter) {

}

 

private static Stream<Map<String, String>> shouldException() {

    return Stream.of(

              new HashMap<>{{ put(key1, value1) }},

              new HashMap<>{{ put(key2, value2) }}, 

              new HashMap<>{{ put(key3, value3) }} 

    )

}

```

 

nazwy metod muszą być identyczne, aby mechanizm wstrzikiwania parametrów zadziałał (można to zmienić - warto doczytać)

 

HINT - zadanie z gwiazdką - możesz nadać scenariuszom nazwy, które będą widoczne w podsumowaniu wykonanego testu.

Zamiast informacji: "filter={to=2000-01-01}", możesz mieć informację: "Testuję filtr dla 'to'", aby tego dokonać, należy skorzystać z parametru adnotacji:

@ParameterizedTest(name = "{0}") i zmodyfikować metodę statyczną, powinna zwracać

Stream<Arguments>

zachęcam do zapoznania się z tym mechanizmem,jednak poznanie go nie jest konieczne to skończenia tego zadania.

 

07 Dodanie Wyjątków Filtrowanie Wydatków

02 marca 2024

Robert Szczygielski Dice Dev. Polityka Prywatności i Regulamin Szkoleń Online

Strona www stworzona w kreatorze WebWave.