CommencezCommencez gratuitement

Validation du nom d'utilisateur

Vous programmez le formulaire d'inscription de votre site Web et vous travaillez présentement sur la validation du nom d'utilisateur. C'est une méthode booléenne vrai/faux, mais elle comporte de nombreuses branches et vous voulez vous assurer qu'elles sont toutes atteignables et se comportent comme prévu.

Pour valider complètement cette méthode, vous devez écrire plusieurs tests, un pour chaque type de scénario. Heureusement, ce n'est pas trop compliqué.

Les forfaits JUnit nécessaires ont été importés pour vous.

Cette activité fait partie du cours

Introduction aux tests en Java

Voir le cours

Instructions de l’exercice

  • Saisissez un nom d'utilisateur trop court (moins de 3 caractères) qui échouera la validation dans le test qui vérifie la longueur du nom d'utilisateur.
  • Passez le username à la méthode .isValidUsername() et conservez le résultat.
  • Vérifiez que le cas null échoue à la validation du nom d'utilisateur.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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

class UsernameValidator {
    public static boolean isValidUsername(String username) {
                return username != null && !username.isEmpty() && !username.contains(" ") && username.length() >= 3;
    }
}

class UsernameValidatorTest {

    @Test
    void isValidUsername_returnsTrue_whenValidUsername() {
        String username = "john_doe";
        boolean actual = UsernameValidator.isValidUsername(username);
        assertTrue(actual);
    }

    @Test
    void isValidUsername_returnsFalse_whenSpaces() {
        String username = "john doe";
        boolean actual = UsernameValidator.isValidUsername(username);
        assertFalse(actual);
    }

    @Test
    void isValidUsername_returnsFalse_whenShortUsername() {
        // Enter a username that is too short
        String username = "____";
        boolean actual = UsernameValidator.isValidUsername(username);
        assertFalse(actual);
    }

    @Test
    void isValidUsername_returnsFalse_whenNull() {
    	String username = null;
        // Pass the username to isValidUsername 
        boolean actual = UsernameValidator.____(____);
        // Verify the username is invalid
        ____(actual)
    }
}
Modifier et exécuter le code