Dou*_*oug 7 java junit android android-espresso
我有一个服务(叫它A),它依赖于服务B和C。
我要对A进行单元测试,因此理想情况下,我想捕获从服务发出的,将启动B或C并将其结果替换为服务的模拟实例的所有意图。但是,Android的测试设置似乎没有明显的实现方式。
意式浓缩咖啡的意图似乎与此最接近,但似乎并不涵盖与服务的绑定。有谁知道如何做到这一点?
A通过如下代码将B和C绑定到...
Intent intent = new Intent(context, B.class);
context.bindService(intent, mServiceConnection, Context.BIND_AUTO_CREATE);
...
private final ServiceConnection mServiceConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
B.BinderStub bInstance = (B.BinderStub) service;
}
...
Run Code Online (Sandbox Code Playgroud)
我没有尝试过,但我认为你可以用它来做你想做的事PowerMock
B myMock = PowerMockito.mock(B.class);
PowerMockito.whenNew(B.class).withAnyArguments().doReturn(myMock)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
360 次 |
| 最近记录: |