我有一个从assets
目录中读取属性的类。这个类的构造者有Context。我想为这堂课写测试,但我真的不知道如何在Android测试中获得上下文。
public class PropertyLoader {
private Context context;
private Properties properties;
public PropertyLoader(Context context) {
this.context = context;
properties = new Properties();
}
public Properties getProperties(String FileName) {
...
}
}
测试类
public class PropertyLoaderTest extends InstrumentationTestCase {
@Test
public void testSimple() {
Context context = getInstrumentation().getContext();
PropertyLoader propertyLoader = new PropertyLoader(context);
}
}
我得到以下异常
junit.framework.AssertionFailedError: Exception in constructor: testSimple (java.lang.RuntimeException: Stub!
答案 0 :(得分:1)
在Android模拟器或设备上运行测试。
您在桌面上使用的android.jar没有任何实现。所有方法都抛出RuntimeException: Stub!
。
或者,从代码中删除所有Android依赖项,以便您可以在不导入android.jar的情况下运行测试。
答案 1 :(得分:1)
带有上下文的TestCase(测试将在设备或模拟器上运行) - http://developer.android.com/reference/android/test/AndroidTestCase.html