Appium inspector 可以直接定位 webview 页面, 有人知道原理吗

背景:在公司做一个 hybrid app 的自动化,无意中发现可以用 native app 的定位方式去定位 webview,而且脚本可以正常运行。怀疑是 Appium 高版本的新特性(1.21 版本)。现在用柠檬班 APP 的“柠檬社区”板块复现工作中遇到的情况,果然复现了。

环境:Appium Desktop 1.21 版,Chrome driver 75.0.3770.140. 夜神模拟器。 启动 Appium Desktop 时,在 Advanced-Android-Chromedriver Binary Path 中, 配置 Chrome driver 在本地的路径,再 save as preset, 并启动。(下次可以点击 preset,选中你保存的 preset 直接启动)。如下图,关键是划线选项

image.png

启动后,打开 Appium inspector, 再进入“柠檬社区”,使用 appium inspector 同步页面,刚开始显示的是一整个 webview,但是需要如下操作: 先在下图圈出的位置,选中 webview,再切回 native app

image.png

切回来后,就可以像 native app 一样定位当前 webview 页面了,而且定位信息应该可以在脚本里跑通。

如下图:原本定位不到的元素现在被辨认为 native app 元素,可以定位了

image.png

在这里想请教下,是 Appium 把 webview 转换为 native app 的吗? 是否是 Appium 某个版本的新特性?

回帖
请输入回帖内容 ...