我是 Android Studio 的新手,我正在尝试测试 GPS 服务。我实际上使用了我在@dtmilano 的另一篇文章中发现的一个示例,我没有收到任何错误,但是测试失败了。另一个帖子提到在测试中启动服务后添加 thread.sleep() ,但仍然失败。有人可以告诉我我错过了什么吗?
这是我使用的示例: ServiceTestCase<T>.getService?
import android.content.Intent;
import android.os.Handler;
import android.os.IBinder;
import android.test.MoreAsserts;
import android.test.ServiceTestCase;
public class GPSServiceTest extends ServiceTestCase<GPSService> {
public GPSServiceTest() {
super(GPSService.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
}
public void testOnStartCommand() throws Exception {
Intent startIntent = new Intent();
startIntent.setClass(getContext(), GPSService.class);
startService(startIntent);
Thread.sleep(10 * 1000);
assertNotNull(getService());
}
public void testBindable() {
Intent startIntent = new Intent();
startIntent.setClass(getContext(), GPSService.class);
IBinder service = bindService(startIntent);
assertNotNull(service);
}
}