0

我有一个有效的服务(我知道它有效,因为我手动测试了)。但是,我正在尝试为它构建 JUnit/Espresso 测试用例。尽管 Android Studio 告诉我测试“通过了”,但我没有看到调用服务的效果。我尝试输入一些调试消息“启动服务”,但**我在控制台上看不到任何日志消息。

有人有什么主意吗?谢谢!

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");
    }

}
4

1 回答 1

0

用你的电流snip,我只看到一个你忘记展示的问题log。因此,请确保您的测试已运行(如您所说通过)并且您logcat已激活(并选择verboselevel)。所以,试着改变这个:

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

于 2016-12-21T03:43:57.470 回答