我们正在从PowerMock
和JUnit
4迁移到Mockito
和JUnit5
。我有一个非常简单的设置类。
@BeforeEach
public void setUp() throws Exception {
service = new ExpressProcessorService<>(prefs);
//whenNew(ExpressCreditCardClient.class).withArguments(prefs).thenReturn(expressClient);
MockedConstruction<ExpressCreditCardClient> mockedExpressCreditCardClient = mockConstruction(ExpressCreditCardClient.class);
}
字符串
我知道内联mock依赖,并且已经有了它,我已经看到了一些答案,所以我很不幸地没有理解。
有没有人能解释一下whenNew行的注解到底是什么,以及如何在Junit5
+ Mockito
中做同样的事情?
1条答案
按热度按时间xoshrz7s1#
测试类中可能有一个字段,例如:
字符串
或
型
关于您分享的powermockito代码:
whenNew(creditCardClient.class).withArguments(prefs).thenReturn(expressClient);
简而言之,它所做的是:
ExpressCreditCardClient
类的特定于存根的构造函数,并传递某些参数值。如果
ExpressCreditCardClient
类是通过一个接受单个参数的构造函数示例化的,并且该参数等于prefs
,那么它将返回ExpressCreditCardClient
类的模拟示例(expressClient
),而不是执行实际代码。关于junit 5/mockito方法:
型
这个函数模拟任何带有参数值的构造函数。