ParameterizedTest: リストの合計
この演習では、パラメータ化テストにオブジェクトを引数として渡す練習をします。sumList
メソッドとそのテストケースを考えてください。
パラメータ化テスト本体と引数を提供するメソッドを完成させてください。
この演習はコースの一部です
Javaによるテスト入門
演習の手順
- メソッドソース用の正しいアノテーションを使い、メソッド名を指定してください。
- 引数プロバイダのメソッドを宣言し、正しいキーワードと戻り値の型になっていることを確認してください。
- 最後の
Argumentsオブジェクトでは、nullとその想定される合計値を使用してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
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, ____));
}
}