使用getCurrentActivityassertCurrentActivity时,总是会给我一个错误的信息。我有活动A并切换到活动B。但是我总是得到活动A作为答案。

这是为什么?

即时通讯使用Robotium版本5.3.0并在5.0.0和Emulator上进行测试

最佳答案

如果在测试中启动后立即尝试获取当前活动,则会发生这种情况,因为启动新的Activity不会阻塞正在运行测试的线程。 Robotium等待“活动”生命周期回调将其放入“活动”堆栈中,并确定哪个是当前活动。

在使用waitForActivitygetCurrentActivity之前,应先尝试使用assertCurrentActivity。调用waitForActivity会阻塞测试线程,直到显示预期的活动,并在超时(默认值为10秒,IIRC)后继续运行代码

08-05 19:57