ParameterizedTest: suma listy
W tym ćwiczeniu przećwiczysz przekazywanie obiektów jako argumentów w testach parametryzowanych. Zapoznaj się z metodą sumList i przypadkami testowymi dla niej.
Uzupełnij test parametryzowany oraz metodę dostarczającą argumenty.
To ćwiczenie jest częścią kursu
Wprowadzenie do testowania w Javie
Instrukcje do ćwiczenia
- Użyj odpowiedniej adnotacji dla źródła metody i podaj jej nazwę.
- Zadeklaruj metodę dostarczającą argumenty – upewnij się, że ma właściwe słowa kluczowe i typ zwracany.
- Dla ostatniego obiektu
Argumentsużyjnulli odpowiadającej mu oczekiwanej sumy.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
public class SumOfList {
public static void main(String[] args) {
launchTestsAndPrint(ListSumTest.class);
}
}
class ListSumTest {
@ParameterizedTest
// Invoke the correct annotation for a method source
@____("____")
void sumList_sumsList(List list, int expectedSum) {
int actualSum = ListSum.sumList(list);
assertEquals(expectedSum, actualSum);
}
// Declare the correct method signature
____ ____ List listsAndSums() {
return List.of(
Arguments.of(List.of(1, 2, 3, 4), 10),
Arguments.of(List.of(-5, 5), 0),
Arguments.of(List.of(), 0),
// Create a null list and the expected sum in that case
Arguments.of(null, ____));
}
}