python+appium+ios,遍历真机元素,得到webview

pyhton+appium+ios,遍历真机webview。是遍历真机的webview,遍历模拟器的webview请另寻方法。

1.mac上安装ios_webkit_debug_proxy

命令:brew install ios_webkit_debug_proxy


2.ios上打开web检查器

位置:设置—》Safari—》高级—》web检查器


3.启动ios_webkit_debug_proxy

命令:ios_webkit_debug_proxy -c xxxxxxxxxxxxxxxxxxx:27753 -d

-c后的参数指真机udid


4.在python代码中用driver.contexts即可得到页面所有context,这个方法会将context存在list里。

打印出list内容,查看你要的webview在第几个,用switch_to.context()切换到那个webview即可。

代码如下:

# 假设我的目标webview存在list里的第三个

myWebview = self.driver.context[2]

self.driver.switch_to.context(myWebview)

这样就切换到了目标webview,接下来就可以像web自动化一样,操作html元素了。怎么得到元素属性,请继续往下看。



----------------------------------------怎么得到webview里的元素--------------------------------------------

切换到了webview里,就可以对元素操作了,但是第一步,要得到元素的属性,下面讲步骤:


1.启动webkit服务,并指定谷歌浏览器进行监听

ios_webkit_debug_proxy -f chrome-devtools://devtools/bundled/inspector.html


2.跑起你的用例代码,停留在含webview的页面。注意,是跑起代码,停留在含webview的页面,不是手动点到那个位置,切记!切记!


3.谷歌浏览器地址输入http://127.0.0.1:9222

在列表中,你就看到了webview的地址,是个完整的url,如图

python+appium+ios,遍历真机元素,得到webview_第1张图片



4.复制出url到浏览器地址,回车,你就会看到在app里一样的webview页面,接下来你就能像web自动化一样,得到元素xpath等等了

---------------------------------------------------------------------------------------------------------------------------------------------------------------

更多请关注:FlyTester,关注技术的测试者

QQ群:456850134

web站:www.flytester.org

微信扫描二维码关注:

python+appium+ios,遍历真机元素,得到webview_第2张图片


你可能感兴趣的:(appium)