您可以使用
@RunWith
@RunWith(FooTestRunner.class)
public class TestFoo {
@Before
public void setUp();
}
然而,一般来说,您可以使用
JUnit rules
. 例如,以下
DaggerMock
规则实例化新的
MyComponent
用一个
MyModule
并将其设置为应用程序中的根组件:
@Rule public DaggerMockRule<MyComponent> daggerRule = new DaggerMockRule<>(MyComponent.class, new MyModule())
.set(new DaggerMockRule.ComponentSetter<MyComponent>() {
@Override public void setComponent(MyComponent component) {
App app = (App) InstrumentationRegistry.getInstrumentation().getTargetContext().getApplicationContext();
app.setComponent(component);
}
});