Java 运行单元测试后,SQLite似乎自动清除,但SharedReferences不';T是这样吗?
在运行检测单元测试后,我发现SQLite数据似乎自动清除,但SharedReferences文件仍然保留在我的设备中。我错了吗?在这两种情况下,我使用相同的模拟上下文来创建SQLiteOpenHelper和SharedReference 下面列出了简化的代码段Java 运行单元测试后,SQLite似乎自动清除,但SharedReferences不';T是这样吗?,java,android,sqlite,android-studio,Java,Android,Sqlite,Android Studio,在运行检测单元测试后,我发现SQLite数据似乎自动清除,但SharedReferences文件仍然保留在我的设备中。我错了吗?在这两种情况下,我使用相同的模拟上下文来创建SQLiteOpenHelper和SharedReference 下面列出了简化的代码段 @RunWith(AndroidJUnit4.class) public class MyTest { Context mMockContext; @Before public void setUp() {
@RunWith(AndroidJUnit4.class)
public class MyTest {
Context mMockContext;
@Before
public void setUp() {
mMockContext = new RenamingDelegatingContext(InstrumentationRegistry.getInstrumentation().getTargetContext(), "test_");
}
@Test
public void testSQLite() throws Exception {
MySQLiteOpenHelper dbHelper = new MySQLiteOpenHelper(mMockContext);
...
}
@Test
public void testSharedPreferences() throws Exception {
SharedPreferences settings = mMockContext.getSharedPreferences("Foo", 0);
...
}
}
是的,如果您不手动删除它,这些资源仍然存在 <>为了保持测试与其他测试隔离,考虑在以下两个方面清除这些资源:
@AfterClass
public void tearDownClass() { }
或:
是的,如果您不手动删除它,这些资源仍然存在 <>为了保持测试与其他测试隔离,考虑在以下两个方面清除这些资源:
@AfterClass
public void tearDownClass() { }
或: