UiAutomator UiautomaotorViewer 如何获得 WebView 内的节点

陆小小凤 · 2019年06月30日 · 最后由 Hank 回复于 2019年07月03日 · 2938 次阅读

貌似有时候能够获取,有时候不能,怎么办啊

最佳回复

放弃吧,各个安卓版本不一样,不同手机产商的手机也不一样,兼容性问题很大,要测 webview,用 UIAutomator 是不行的,如果是小程序(腾讯 x5)的测试,那是需要在 UIAutomator 中建 websocket 用 js 注入去抓页面,其他 webview 的话,就用 Robotium 或者 espresso 这样的侵入式的框架,去获取 webview 对象,再注入 js 去抓页面

共收到 4 条回复 时间 点赞

放弃吧,各个安卓版本不一样,不同手机产商的手机也不一样,兼容性问题很大,要测 webview,用 UIAutomator 是不行的,如果是小程序(腾讯 x5)的测试,那是需要在 UIAutomator 中建 websocket 用 js 注入去抓页面,其他 webview 的话,就用 Robotium 或者 espresso 这样的侵入式的框架,去获取 webview 对象,再注入 js 去抓页面

听你这么说,好像很难啊

UI 工具有时候获取不到,就点 H5 页面上的链接进去下一个页面,然后返回回来,一般就能获取到了。

如果是想获取你们自己 app 里面使用的 WebView 内的节点,可以直接让开发 设置 debug 属性就好:WebView.setWebContentsDebuggingEnabled(true)
如果是想获取第三方 app 的 webview 内元素,那目前还真的不好办,

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册