7

我有一个Activity我正在单元测试。我想单独测试Activity,所以ActivityUnitTestCase非常适合我的目的。

我的onCreate方法Activity使用存储在首选项中的值。我想在我的测试用例中为此设置一个值。

问题是我不知道如何Preference提前设置。中没有getContext()方法ActivityUnitTestCase,并且getActivity()应该返回一个context,在我调用之前为空startActivity()。这不是一个选项,因为调用startActivity将触发该onCreate方法,这就是首选项代码所在的位置。

关于如何获得context可用于操纵单元测试首选项的任何想法?

4

1 回答 1

9

您可以通过仪器获取上下文。

要获取仪器的上下文(测试运行器):

getInstrumentation().getContext()

但是您可能需要检测应用程序的上下文:

getInstrumentation().getTargetContext()
于 2013-02-08T20:35:40.133 回答