安卓仪表化测试运行所有测试时对话框不显示。
创始人
2024-11-09 17:00:19
0

问题产生原因可能是因为在测试过程中有某些代码块阻塞了主线程,而导致对话框无法正常显示。因此需要在测试代码中加入异步处理的机制来避免主线程卡死的情况。

示例代码:

@Test public void testDialogShowing() { // 在测试的代码块中加入异步处理机制,以避免阻塞主线程 new Handler(Looper.getMainLooper()).post(new Runnable() { @Override public void run() { // 显示对话框 showDialog(); } }); // 执行测试操作 onView(withId(R.id.button)).perform(click()); // 对话框显示时间 onView(withText("Hello World!")).inRoot(new ToastMatcher()) .check(matches(isDisplayed())); }

// 自定义 Matcher,用于匹配 Toast 弹出的对话框 public class ToastMatcher extends TypeSafeMatcher {

@Override
public void describeTo(Description description) {
    description.appendText("is toast");
}

@Override
public boolean matchesSafely(Root root) {
    int type = root.getWindowLayoutParams().get().type;
    if (type == WindowManager.LayoutParams.TYPE_TOAST) {
        IBinder windowToken = root.getDecorView().getWindowToken();
        IBinder appToken = root.getDecorView().getApplicationWindowToken();
        if (windowToken == appToken) {
            // 确认需要显示的对话框已经显示出来了
            return true;
        }
    }
    return false;
}

}

相关内容

热门资讯

分享给玩家!极速官方暗堡透视,... 极速官方暗堡透视开挂教程视频分享装挂详细步骤在当今的网络游戏中,极速官方暗堡透视作为一种经典的娱乐方...
科技介绍!大唐辅助安装,哈糖大... 科技介绍!大唐辅助安装,哈糖大菠萝辅助器(有挂详细辅助平台)这是一款可以让一直输的玩家,快速成为一个...
最新技巧!仙神互娱辅助,赣牌圈... 赣牌圈修改器是一款专注玩家量身打造的游戏记牌类型软件,在赣牌圈修改器这款游戏中我们可以记录下每张牌的...
一分钟揭秘!新西部辅助器,微信... 大家好,今天小编来为大家解答微信微乐小程序修改器这个问题咨询软件客服可以免费测试直接加微信(1367...
必备攻略!掌中乐游戏辅助器,衢... 必备攻略!掌中乐游戏辅助器,衢州都莱辅助软件(存在有挂辅助开挂挂)这是一款可以让一直输的玩家,快速成...
如何分辨真伪!都莱大菠萝辅助,... 兴动互娱辅助工具开挂教程视频分享装挂详细步骤在当今的网络游戏中,兴动互娱辅助工具作为一种经典的娱乐方...
科普常识!边锋老友辅助,九酷众... 科普常识!边锋老友辅助,九酷众游辅助(有挂工具辅助器) 了解更多开挂安装加(136704302)微信...
今日重大通报!博雅红河西元红河... 大家好,今天小编来为大家解答博雅红河西元红河破解版这个问题咨询软件客服可以免费测试直接加微信(136...
实测交流!游戏辅助器免费版,顺... 实测交流!游戏辅助器免费版,顺欣茶楼开挂(有挂规律开挂辅助下载);打开点击测试直接进入微信(1367...
盘点一款!天天贵阳辅助插件,约... 天天贵阳辅助插件是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加我微...