我想确保在我之前清除首选项Activity
在我的单元测试中开始。
问题是要清除首选项,您需要调用getActivity()
。之后,Activity
启动,它会读取首选项。
@Override
protected void setUp() throws Exception {
super.setUp();
mActivity = this.getActivity();
SharedPreferences prefs =
PreferenceManager.getDefaultSharedPreferences(mActivity);
prefs.edit().clear().commit();
}
When getActivity()
被称为,Activity
创建后,它会在下一行清除首选项之前读取首选项的值。
有没有办法获得Context
对象而不启动Activity
?
我是 Android 单元测试的新手,所以也许我错过了一些基本的东西。
在这里找到了答案,在调用 getActivity() 之前从 Setup() 中的 TestSuite 访问应用程序上下文 https://stackoverflow.com/questions/5544205/accessing-application-context-from-testsuite-in-setup-before-calling-getactivi
Call,
this.getInstrumentation().getTargetContext()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)