zoukankan      html  css  js  c++  java
  • 【转】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 C. Cows and Sequence 解题报告
    codeforces A. Point on Spiral 解题报告
    codeforces C. New Year Ratings Change 解题报告
    codeforces A. Fox and Box Accumulation 解题报告
    codeforces B. Multitasking 解题报告
    git命令使用
    shell简单使用
    知识束缚
    php 调用系统命令
    数据传输方式(前端与后台 ,后台与后台)
  • 原文地址:https://www.cnblogs.com/xiyuan2016/p/7448260.html
Copyright © 2011-2022 走看看