java - 验证电子邮件时出现 NullPointerException

标签 java android android-studio junit junit4

我正在编写一个单元测试来检查电子邮件验证逻辑。当您运行测试时,逻辑会抛出空指针异常。但它在模拟器上运行良好。有人可以帮我解决这个问题吗?

public static String validate(String email, String password) {
        if (email == null || email.isEmpty() || !android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches()) {
            return "Enter valid email address";
        }
        if (password.isEmpty() || password.length() < 4) {
            return "Password should be between 4 and 10 alphanumeric characters";
        }
        return null;
}

下面是我的单元测试。

@Test
public void validateShouldReturnMessageIfYouPassAnInvalidEmail() throws Exception {
    String validateMessage = LoginService.validate("abcdef", "password");
    assertEquals("Enter valid email address", validateMessage);
}

我得到的错误是,

java.lang.NullPointerException
at com.tryout.hemanth.expensetracker.service.LoginService.validate(LoginService.java:11)

最佳答案

使用PatternsCompat代替Patterns

关于java - 验证电子邮件时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37302702/

相关文章:

java - 如何让 MediaPlayer 的声音继续播放?不循环

android - Android 3.5.3 上的 "Kotlin not configured"错误

android - 如何在调试构建变体中使用库运行应用程序?

java - 为什么此代码有这么多错误?

java - 如何使用 Java 解压缩由 Linux 创建的受密码保护的存档

java - JOGL OpenGL 只在奇怪的条件下渲染

java - 如何在java中将facebook字符串timestampformate转换为时间戳ts?

android - 我不知道为什么我会遇到越界异常?

android - 在 active-android 中发现意外的元数据类型

java - 符号构建期间发生意外异常(rebuildModuleMaps)