ActivityInstrumentationTestCase2 - sendkeys

时间:2013-08-26 11:23:46

标签: android android-testing

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

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

还有其他方法可以通过一点点延迟来模拟关键事件吗?现在我正在使用 Thread.sleep(500)引入一个小延迟。

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

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

1 个答案:

答案 0 :(得分:1)

在robotium中有睡眠方法,因此您可以将所有Thread.sleep替换为:

solo.sleep(long ms);

还有另一种方式,UIAutomator使用,但是我不确定,如果它是安全的并且不会导致UI冻结:

SystemClock.sleep(long ms);

如果您确定要显示某些视图,也可以使用等待方法。看看robotium api,你会发现还有什么对你有用。