gpt4 book ai didi

java - Mockito 未重置

转载 作者:行者123 更新时间:2023-12-01 17:32:27 25 4
gpt4 key购买 nike

我有一个测试,当它们单独运行时工作正常。然而,当我将它们一起运行时,总是无法预期两个测试而不是一个测试的总调用次数。

我在before和after方法中都添加了Mockito.reset,但没有效果。

    private Logic mockTest = Mockito.mock(Logic.class);         

@Before
public void createMocks() {
Mockito.reset(mockTest);
}

@Test
public void TestGameList() {


Mockito.when(mockTest.getGame()).thenReturn(null);

Mockito.verify(mockTest, Mockito.times(1)).getGame();

}

@Test
public void TestGame2List() {


Mockito.when(mockTest.getGame()).thenReturn(null);

Mockito.verify(mockTest, Mockito.times(1)).getGame();

}

为什么重置不起作用?

我尝试过 VerificationModeFactory 来计算它,但这也不起作用

最佳答案

使用以下其中一项:

@Mock
private Logic mockTest;

@Before
public void createMocks() {
MockitoAnnotiation.initMocks(this);
}

private Logic mockTest;      

@Before
public void createMocks() {
mockTest = Mockito.mock(Logic.class);
}

无论哪种方式,您都将为每个测试创建一个全新的模拟,从而确保测试之间不会维护任何状态。

关于java - Mockito 未重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22658624/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com