以下のコードでテストしましたが、getSystemContext() が null を返すため、NullpointerException が発生します。私のプロジェクトは次のようになります。
~/trunk/src/<packages>/<classes>
~/trunk/test/<packages/<testclasses>
~/trunk/<static android dirs>
~/trunk/AndroidManifest.xml
私が間違ったことを教えてください。
@RunWith(RobolectricTestRunner.class)
public class MyServiceTest extends ServiceTestCase<MyService> {
public MyServiceTest() {
super(MyService.class);
}
@Test
public void testStartable() {
Context mockContext = getSystemContext();
Log.d("testStartable", "testContext " + mockContext.getClass().getCanonicalName());
Intent startIntent = new Intent();
startIntent.setClass(mockContext, MyService.class);
mockContext.startService(startIntent);
assertNotNull(getService());
}
}