gpt4 book ai didi

java - BDDMockito 调用真正的静态模拟方法

转载 作者:行者123 更新时间:2023-11-30 08:11:46 24 4
gpt4 key购买 nike

使用 BDDMockito,我模拟了静态方法。现在我想在答案方法中使用ResourceHelper的真实方法。据我了解,这个答案方法会调用自己。那么如何调用真正的静态方法呢?

PowerMockito.mockStatic(SomeHelper.class);
BDDMockito.given(SomeHelper.helpMethod(Matchers.eq(SomeClass.class), Matchers.anyString(), Matchers.anyString())).willAnswer(newAnswer<String>() {

@Override
public String answer(InvocationOnMock invocation) throws Throwable {
//Here I want call real ResourceHelper's method
return SomeHelper.helpMethod(AnotherClass.class, "param1", "param2");
}
});

最佳答案

听起来您想使用BDDMockito.willCallRealMethod()。为此,请将当前的 stub 代码替换为以下内容:

given(SomeHelper.helpMethod(Matchers.eq(SomeClass.class), Matchers.anyString(), Matchers.anyString())).willCallRealMethod();

这委托(delegate)给标准 Mockito 的 doCallRealMethod() 方法。

关于java - BDDMockito 调用真正的静态模拟方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30300227/

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