java - Junits 中的 NullPointerException

标签 java junit mockito

我开始学习junits,我正在尝试模拟arraylist类,但它向我显示空指针异常。

这是我的代码:

public class MyListTest {

    @Mock
    ArrayList<String> al;
    @Test
    public void whenNotUseMockAnnotation_thenCorrect() {

        when(al.add("a")).thenReturn(true); 
        assertTrue(al.add("a"));


    }

}

最佳答案

需要“启动”Mockito。实际上@Mock注释就像一个装饰器,你需要执行以下操作之一:

  1. 使用 MockitoJUnitRunner 注释 JUnit 测试:
@RunWith(MockitoJUnitRunner.class)
public class MyListTest
  • 通过 MockitoAnnotations.initMocks() 以编程方式启用 Mockito。您可以在 JUnit 的 @Before 方法中使用一次。示例:
  • @Before
    public void init() {
        MockitoAnnotations.initMocks(this);
    }
    

    关于java - Junits 中的 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61202704/

    相关文章:

    java - 了解RadioGroup上哪个RadioButton被选中

    java - 我不知道 BigIntegers 哪里出了问题

    java - 如何使用 Spring Security 正确获取与用户关联的 GrantedAuthority 列表?

    java - Ant 和带注释的 junit 测试

    java - JUnit/Mockito 测试用例在 Debug模式下通过但在运行模式下未通过

    java - 如何在自己的类中模拟 ConcurrentModificationException?

    java - 使用百分比和 BigDecimal 进行测试

    java - 引入依赖会破坏现有的依赖吗?

    java - 使用mockito进行接口(interface)实现

    java - JUnit用于抽象类的final方法