没有看到测试服务的日志输出

时间:2016-12-21 02:48:58

标签: android junit android-espresso servicetestcase

我有一个有效的服务(我知道它有效,因为我手动测试了)。但是,我正在尝试为它构建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");
    }

}

1 个答案:

答案 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或添加更多信息。