Android JUnit 模拟 Activity 上下文
Android JUnit mock Activity context
我有一个方法要测试。它内部有一个 DatePickerDialog,它需要一个上下文(Activity 上下文)。我试着用这个
ApplicationProvider.getApplicationContext<Context>()
但显然,它不起作用
java.lang.RuntimeException: Can't create handler inside thread Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main] that has not called Looper.prepare()
我需要 DatePickerDialog 只是出于一个原因。测试是否设置了 minDate 和 maxDate。是否有可能以某种方式获得模拟 activity 上下文?
我应该使用 ActivityTestRule 还是 ActivityScenario?还有其他方法吗?
谢谢。
已解决。刚刚在我的测试方法中添加了 @UiThreadTest 注释。
我有一个方法要测试。它内部有一个 DatePickerDialog,它需要一个上下文(Activity 上下文)。我试着用这个
ApplicationProvider.getApplicationContext<Context>()
但显然,它不起作用
java.lang.RuntimeException: Can't create handler inside thread Thread[Instr: androidx.test.runner.AndroidJUnitRunner,5,main] that has not called Looper.prepare()
我需要 DatePickerDialog 只是出于一个原因。测试是否设置了 minDate 和 maxDate。是否有可能以某种方式获得模拟 activity 上下文?
我应该使用 ActivityTestRule 还是 ActivityScenario?还有其他方法吗?
谢谢。
已解决。刚刚在我的测试方法中添加了 @UiThreadTest 注释。