我找到了一种访问TestProject资源的方法
Accessing resources in an android test project
但是当我使用ActivityTestCase而不是AndroidTestcase时,我无法访问数据库
java.lang.NullPointerException
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:224)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:164)
at com.j256.ormlite.android.AndroidConnectionSource.getReadWriteConnection(AndroidConnectionSource.java:66)
at com.j256.ormlite.android.AndroidConnectionSource.getReadOnlyConnection(AndroidConnectionSource.java:54)
at com.j256.ormlite.dao.BaseDaoImpl.idExists(BaseDaoImpl.java:805)
at com.j256.ormlite.dao.BaseDaoImpl.createOrUpdate(BaseDaoImpl.java:335)
有两种方法可以同时使用吗?
答案 0 :(得分:0)
好的,我解决了我的问题:
我现在使用InstrumentationTestCase(我认为ActivityTestCase也可以使用)
问题在于有两种情境
Context mainProjectContext = getInstrumentation().getTargetContext();
Context testProjectContext = getInstrumentation().getContext();
现在我可以从testProjectContext中获取资源并让数据库与mainProjectContext一起运行