0

我正在尝试通过ActivityInstrumentationTestCase2测试我的应用程序。我的 UI 中有一些可点击的内容。我使用sendKeys(KeyEvent.KEYCODE_DPAD_DOWN); sendKeys(KeyEvent.KEYCODE_DPAD_CENTER);etc 在我的 UI 上模拟键事件。

问题是我的应用程序有点慢,而测试用例相对较快。所以发生的事情是键事件有时会单击/导航到错误的 UI 元素,这会弄乱测试用例。

有没有其他方法可以用一点延迟来模拟键事件?现在我 Thread.sleep(500)用来介绍一个小的延迟。

除了使用之外,还有更优雅的方法Thread.sleep()吗?

注意:我知道Robotium,如果答案与 Android 测试框架相关,我将不胜感激。谢谢。

4

1 回答 1

1

robotsium 中有 sleep 方法,因此您可以将所有 Thread.sleep 替换为:

solo.sleep(long ms);

UIAutomator 还有另一种方法,但是我不确定它是否安全并且不会导致 UI 冻结:

SystemClock.sleep(long ms);

如果您确定将出现某些视图,您也可以使用等待方法。看看robotium api,你会看到还有什么对你有用的。

于 2013-08-26T18:21:37.187 回答