Espresso - 正确清除活动保存的实例状态

Espresso - Properly clear Activities saved instance states

我正在为我的应用程序编写 espresso 测试,在清除应用程序状态时遇到困难,状态被保存,这会影响其他测试并给它们带来不稳定。

我使用意图规则开始我的 activity:

    @Rule
    public final IntentsTestRule<MainActivity> mIntentsTestRule = newIntentsTestRule<>(MainActivity.class, true, false);

我的设置清除了我有权访问的所有内容:数据库、sharedPrefs、自定义可变配置。

    @Before
    public void setUp() {
     mSharedPrefManager.clear();
     mAppConfig.clear();
     mDatabasePersister.deleteDatabase();
    }

遗憾的是,我在 activity 保存的实例状态方面存在问题,这给我的测试带来了 易碎性,因为保留了以前的状态。

有没有办法在每次 activity 启动时以编程方式清除保存的实例状态

问题是由内存泄漏引起的,因此 activity 没有正确清除就保留了它,感谢您的努力,在解决泄漏问题后 espresso 运行 很好。