我有一个有效的服务(我知道它有效,因为我手动测试了)。但是,我正在尝试为它构建JUnit / Espresso测试用例。虽然Android Studio告诉我测试通过了,#34;但我没有看到调用服务的效果。我尝试输入一些调试信息" 启动服务",但**我在控制台上看不到任何日志消息。
有没有人有任何想法?谢谢!
private static StringBuilder log = new StringBuilder();
@Test
public void testWithoutLocation(){
Intent intent = new Intent(InstrumentationRegistry.getContext(), SendMessage.class);
intent.putExtra(BaseService.TAG_PERSON_ID, "ABCD");
intent.putExtra(BaseService.TAG_MESSAGE_ID, "12345");
try {
log.append("Starting the service");
oServiceTestRule.startService(intent);
} catch (TimeoutException e) {
e.printStackTrace();
fail("TimeoutException caught");
}
}
答案 0 :(得分:0)
使用您当前的snip
,我只看到一个您忘记显示log
的问题。因此,请确保您的测试已运行(按照您的说明传递),并且您的logcat
已激活(和select verbose
level)。所以,试着改变这个:
try {
log.append("Starting the service");
oServiceTestRule.startService(intent);
Log.d("YOUR_TAG", "testWithoutLocation: " + log.toString())
} catch (TimeoutException e) {
e.printStackTrace();
fail("TimeoutException caught");
}
如果仍然无效,请尝试重新启动logcat
或添加更多信息。