始める無料で始める

ユーザー名検証のパラメータ化

Java の知識が深まってきたので、第1章で扱ったユーザー名バリデーターを見直すことにしました。単一の出力に依存するため、パラメータ化で簡潔にできます。

isValidUsername() メソッドのすべての失敗パターンを考えてください。それらを 1 つの @ParameterizedTest にまとめましょう。

必要な JUnit パッケージはインポート済みです。

この演習はコースの一部です

Javaによるテスト入門

コースを見る

演習の手順

  • 適切なアノテーションを使って、テストをパラメータ化テストとしてマークします。
  • テストに null 入力を追加します。
  • テスト内の入力値にアノテーションを追加します。
  • 入力の値型を指定します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

public class Main {
    public static void main(String[] args) {
		launchTestsAndPrint(UsernameValidatorTest.class);
    }
}

class UsernameValidatorTest {
	
    // Annotate with the correct annotation for parameterized test
    @____ 
    // Add the annotation for inputting a null input
    @____ 
    // Add the annotation for inputting values and the type of the inputs
    @____(____ = {"john doe", "jd"}) 
    void isValidUsername_returnsFalse_whenSpaces(String username) {
        boolean actual = UsernameValidator.isValidUsername(username);

        assertFalse(actual);
    }
}
コードを編集して実行