用户名校验的参数化测试
随着您对 Java 的理解加深,您决定回到第 1 章的用户名校验器。由于它只依赖单一输出,可以通过参数化来精简。
请考虑 isValidUsername() 方法的所有失败结果。将它们合并到一个 @ParameterizedTest 中。
所需的 JUnit 包已为您导入。
本练习是课程的一部分
Java 测试入门
练习说明
- 使用正确的注解将测试标记为参数化测试。
- 为测试添加一个空输入。
- 为测试中的输入值添加相应的注解。
- 标注输入的值类型。
交互式实操练习
通过完成这段示例代码来试试这个练习。
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);
}
}