android - 可以使用 Espresso 在进度对话框下方测试 View 吗?

标签 android unit-testing automated-tests android-espresso

我正在尝试使用一个函数来随时检查 Activity 图形元素的一致性。我发现当进度对话框显示 Espresso 时,无法在下方找到任何 View 。有什么办法可以看到下面的景色吗?

最佳答案

是的,您使用 RootMatcher .例如:

// Specifically target the main window view hierarchy
onView(withId(R.id.view_to_match))
    .inRoot(withDecorView(is(getActivity().getWindow().getDecorView())))
    .perform(click());

或者也许:

// Specifically disregard the dialog window view hierarchy
onView(withId(R.id.view_to_match))
    .inRoot(not(isDialog()))
    .perform(click());

参见 the official documentation举个例子。

希望对您有所帮助!

关于android - 可以使用 Espresso 在进度对话框下方测试 View 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46383142/

相关文章:

tdd - 我该如何决定要手动测试哪些内容,以及要信任自动测试的内容?

android - 如何减少 Android 中两个并排 ImageView 之间的空间?

java - Firebase Auth 在单击按钮时未启动 Activity 但在关闭并重新打开应用程序时有效

java - 具有隐藏构造函数的抽象类的实例

包含 doctest.testmod() 的外部模块中的 python run 函数

android - 意式 Espresso 动态旋转器测试

android - 创建 View 后如何更改编辑文本

javascript - 如何覆盖 JS 库中的变量

java - 如何配置 testsuit 始终将常量注入(inject)到类的所有实例的 @value 私有(private)字段中

javascript - 对包含未编译的 $watch() 的 AngularJS 指令进行单元测试