我有一个大约20个Android设备的农场来运行检测UI测试。我用浓咖啡。有时会出现不同的系统对话框,导致测试失败。 例如。 USSD结果对话框,丢失互联网连接对话框,更新操作系统请求对话框等
有没有办法捕获任何对话框并关闭它? 这个意图没有帮助。
Intent.ACTION_CLOSE_SYSTEM_DIALOGS
答案 0 :(得分:1)
点击后退按钮事件
很简单<强> onView(isRoot())执行(ViewActions.pressBack()); 强>
将此添加到您的gradle:
androidTestCompile&#39; com.android.support.test.uiautomator:uiautomator-v18:2.1.2&#39;
然后在你的测试中这样做:
UiDevice mDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()); mDevice.pressBack(); 强>
如果您对Espresso UI测试更感兴趣,可以在GitHub上查看Express Express演示项目:https://github.com/ranaNarin/Espresso-Android
在此演示项目中,在所有场景中实施espresso: - EditText,按钮,选项菜单点击,导航抽屉打开和关闭,单击回收器视图项,打开相机并使用Espresso UI测试单击图像
答案 1 :(得分:0)
我一直在研究这个问题。弹出窗口有一个id,可以使用测试框架解除。到目前为止,我已经找到了如何使用appium进行操作,还有另外一个GitHub使用仪器,但我还没有实现它。
https://github.com/jamesknowsbest/aws-device-farm-sample-app-for-android