我有一套在Android上运行的Espresso测试。它们通常运行没有问题。但是,他们间歇性地无法在微调器中验证日期。通过查看它,我发现微调器一旦被点击就被解雇了。
正在运行的代码是:
public static void selectFromComboBox(String prompt, String toSelect) {
onView(allOf(withId(R.id.combo_box_entry), hasSibling(withText(prompt)))).perform(click());
onData(Matchers.allOf(is(instanceOf(String.class)), is(toSelect))).perform(click());
}
当我运行完全相同的测试而不进行任何更改时,有时会收到错误消息
android.support.test.espresso.PerformException: Error performing 'load adapter data' on view 'is assignable from class: class android.widget.AdapterView'.
我记录了通过和失败的屏幕,发现在失败时,微调框的列表几乎在打开后就被取消了,这似乎是导致问题的原因。
在通过方案和失败方案之间,日志输出实际上看起来没有什么不同。有没有人以前见过此事,或知道是否有解决方法,或者对到底发生了什么有任何想法吗?
答案 0 :(得分:0)
不是最漂亮的解决方案,但是我的解决方法是在打开菜单后添加500 ms的简单等待时间