单元测试Android服务

时间:2015-11-25 19:21:06

标签: android unit-testing junit4

我正在尝试使用" ServiceTestCase"来测试我的服务。框架如下:

@RunWith(AndroidJUnit4.class)
public class testTts extends ServiceTestCase<TtsLbEngine> {

    public testTts() {
        super(TtsLbEngine.class);
    }

    @Before
    public void setUp() throws Exception {
        super.setUp();
    }

    @After
    public void tearDown() throws Exception {
        super.tearDown();
    }


    @Test
    public void testOnCreate() throws Exception {
        Intent intent = new Intent(getSystemContext(), TtsLbEngine.class);
        intent.setClass(getSystemContext(), TtsLbEngine.class);
        startService(intent);
        assertNotNull(getService());

    }
}

问题是服务是Null。 能告诉你吗。

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题。 请在下面找到如何操作:

public class testService extends ServiceTestCase<myService> {


    public testService() {
        super(myService.class);
    }

    @Before
    public void setUp() throws Exception {
        super.setUp();
    }

    @After
    public void tearDown() throws Exception {
        super.tearDown();
    }


    @Test
    public void testService() throws Exception {
        Intent startIntent = new Intent();

        startIntent.setClass(getContext(), myService.class);
        startService(startIntent);

        myService s = getService();

        assertNull(s);
    }
}
相关问题