gpt4 book ai didi

java - 我的模拟方法在每次调用时返回相同的实例,如何让它返回一个新实例?

转载 作者:行者123 更新时间:2023-11-28 21:03:41 25 4
gpt4 key购买 nike

private mockedObject cpMock;

@Test
public void test() {

Manager managerTest = new Manager(cpMock, size);

Instance instance = new Instance(size);
when(cpMock.requestInstance()).thenReturn(instance);

}

最佳答案

thenReturn 有一个重载,它有一个 var-arg 参数:

when(cpMock.requestInstance())
.thenReturn(instance, instance1, instance2, instance3);

根据它的 javadocs,它将按顺序返回这些对象。从第 4 次调用开始,将返回 instance3(最后一个值):

Sets consecutive return values to be returned when the method is called. E.g: when(mock.someMethod()).thenReturn(1, 2, 3);
Last return value in the sequence (in example: 3) determines the behavior of further consecutive calls.

关于java - 我的模拟方法在每次调用时返回相同的实例,如何让它返回一个新实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52448093/

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