• 【转】NO.3、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.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,如图

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

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

  • 相关阅读:
    Codeforces Round #696 (Div. 2) A
    软件体系结构期末复习
    LINUX 下配置 redis
    2020-09-30 刷题记录
    2020-09-29 刷题记录
    Codeforces Round #673 (Div. 2) A
    2020-09-26 刷题记录
    2020-09-25 刷题记录
    C++ 类虚函数实现原理的验证(指向包含类虚函数地址的数组的指针)
    Saleae8 与 SaleaeLogic、PulseView上位机的使用
  • 原文地址:https://www.cnblogs.com/xiyuan2016/p/7448260.html
Copyright © 2020-2023  润新知