【发布时间】:2016-12-18 14:53:30
【问题描述】:
我有一个正在测试的类,其构造函数如下所示:
public class ClassUnderTest {
ClientOne clientOne;
ClientTwo clientTwo;
OtherDependency otherDependency;
@Inject
public ClassUnderTest(MyCheckedProvider<ClientOne> myCheckedProviderOne,
MyCheckedProvider<ClientTwo> myCheckedProviderTwo,
OtherDependency otherDependency) throws Exception {
this.clientOne = myCheckedProviderOne.get();
this.clientTwo = myCheckedProviderTwo.get();
this.otherDependency = otherDependency;
}
.
.
.
}
CheckedProvider 看起来是这样的:
public interface MyCheckedProvider<T> extends CheckedProvider<T> {
@Override
T get() throws Exception;
}
我可以模拟客户端,但是如何使用模拟的客户端初始化提供程序。我使用 junit 和 mockito 的组合来编写测试。任何输入都将不胜感激。
【问题讨论】:
标签: unit-testing junit dependency-injection mocking guice