Java+Uiautomator自动化测试 -- UiWatcher处理手机权限框

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ricky_yangrui/article/details/89194305

在自动化测试执行case的时候,经常会有各种的权限框,或者第一次进入文件或者应用,都会弹出权限框,如果不做处理,case就会失败,如何解决这个问题,就需要我们用到的UiWatcher。

看代码:

@Override
public void setUp() throws Exception {
    super.setUp();
    mDevice.registerWatcher("x1", new UiWatcher() {
        UiObject warning = new UiObject(new UiSelector().resourceId("com.android.packageinstaller:id/button_group"));
        @Override
        public boolean checkForCondition() {
            if (warning.exists()) {
                UiObject allowButton = new UiObject(new UiSelector().text("ALLOW"));
                try {
                    allowButton.click();
                } catch (UiObjectNotFoundException e1) {
                    e1.printStackTrace();
                }
                return true;
            }
            return false;
        }
    });
    mDevice.runWatchers();
    mGalleryPage = new GalleryPage(mDevice);
}

逻辑就是我们先注册一个watcher,然后warning这就是弹出的权限框,判断它,假如它弹出这个框,后面就点击ALLOW,如果没有弹出这个权限框,case就直接运行了。

猜你喜欢

转载自blog.csdn.net/ricky_yangrui/article/details/89194305
今日推荐