如何为以下代码编写JUnit测试用例?
public static boolean validEmail(String emailAddress) {
String EMAIL = "^[_A-Za-z0-9-]+(\\.[_A-Za-z0-9-]+)*@[A-Za-z0-9-]+(\\.[A-Za-z0-9-]+)*(\\.[A-Za-z]{2,})$";
if (emailAddress.trim().matches(EMAIL)) {
return true;
} else {
return false;
}
}
答案 0 :(得分:0)
使用JUnit 5,我建议这样做:
@ParameterizedTest
@CsvSource({"true, tester@mail.test", "false, unknown", "false, A@A"})
void testIsValidEmail(boolean expected, String email) {
assertEquals(expected, YourClass.validEmail(email));
}
但是您应该在其他测试参数上付出一些努力。您可以在https://www.istqb.org/downloads/send/51-ctfl2018/208-ctfl-2018-syllabus.html
上阅读有关等价划分和边界值分析的信息。