我正在尝试使用 ActivityInstrumentationTestCase2 为登录 Activity 运行多个测试用例。第一个测试用例测试登录成功,这会导致 Activity 通过调用 startActivity(Intent intent) 启动下一个 Activity。现在,在我要测试的 Activity 之上还有另一个 Activity。第一个测试用例通过,启动第二个测试用例。但是,当它被第二个测试用例调用时,它将永远挂在 getActivity() 处。
如果我进入我的登录 Activity 的代码并注释掉调用 startActivity(Intent intent) 的部分,那么两个测试用例都会成功运行。
我已经尝试了几件事。我使用 Intent.FLAG_ACTIVITY_CLEAR_TOP 来清除 Activity 堆栈。在这种情况下,顶级活动被关闭,并显示登录活动,但当第二个测试用例启动时,它仍然卡在 getActivity() 处。
我也尝试过 sendKeys(KeyEvent.KEYCODE_BACK),但这没有任何效果。
我能做些什么来克服这个问题?谢谢!