selenium如何独立的和手机webview进行交互;不借助appium的情况下
首先说明一下本文的用意:自动化如何轻量级的操作手机的webview;在无appium的情况下,如何部署才能获取页面元素和操作页面元素
ChromeDriver是啥
http://chromedriver.chromium.org/getting-started/getting-started---android
总结:目前Android WebView支持主要还是靠ChromeDriver来实现的
必备依赖
1. selenium
2. python2.7
操作步骤
1. 安装selenium最新版本
pip install selenium 
https://pypi.org/project/selenium/
2. 下载chromedriver,并且注意和手机中的chrome内核版本一致,不然会报错的
下载地址:https://sites.google.com/a/chromium.org/chromedriver/downloads 源码
selenium打开chrome浏览器的时候,需要用chromedriver,而chromedriver与chrome的版本也是要相互适宜的
对于第二点的说明:如果是做手机的webview自动化,chromedriver一定要和手机中的chrome版本对应,而非PC端的,关于手机中chrome版本的获取可以参考一下步骤:
- a. 在手机中打开带有webview的界面,然后查看webview的端口号
webview_devtools_remote_36315对应的应该是应用内的WebView,这个26315应该是个pid
进行一个forward操作:adb forward tcp:9999 localabstract:webview_devtools_remote_26315
至此得到了手机中的chrome版本号
3. 启动PC本地相应的chromedriver

4. 写py脚本就可以实现手机中webview元素的获取和操作了

问题汇总:
1. centos中有可能缺少gconf

需要运行命令:
yum install GConf2
| chromedriver版本 | 支持的Chrome版本 |
|---|---|
| v2.37 | v64-66 |
| v2.36 | v63-65 |
| v2.35 | v62-64 |
| v2.34 | v61-63 |
| v2.33 | v60-62 |
| v2.32 | v59-61 |
| v2.31 | v58-60 |
| v2.30 | v58-60 |
| v2.29 | v56-58 |
| v2.28 | v55-57 |
| v2.27 | v54-56 |
| v2.26 | v53-55 |
| v2.25 | v53-55 |
| v2.24 | v52-54 |
| v2.23 | v51-53 |
| v2.22 | v49-52 |
| v2.21 | v46-50 |
| v2.20 | v43-48 |
| v2.19 | v43-47 |
| v2.18 | v43-46 |
| v2.17 | v42-43 |
| v2.13 | v42-45 |
| v2.15 | v40-43 |
| v2.14 | v39-42 |
| v2.13 | v38-41 |
| v2.12 | v36-40 |
| v2.11 | v36-40 |
| v2.10 | v33-36 |
| v2.9 | v31-34 |
| v2.8 | v30-33 |
| v2.7 | v30-33 |
| v2.6 | v29-32 |
| v2.5 | v29-32 |
| v2.4 | v29-32 |
chromedriver下载地址http://chromedriver.storage.googleapis.com/index.html
浙公网安备 33010602011771号