Appium 踩坑记录
1.安装conda https://docs.conda.io/en/latest/miniconda.html
2.配置conda代理 https://www.jianshu.com/p/fc5dc0938bf5 https://www.cnblogs.com/ytikewk/p/16471636.html
3.安装并启动 VScode;appium ;android studio;JDK8;Node.js
4.设置环境变量
4.1 用户变量:ANDROID_HOME C:\Users\dell\AppData\Local\Android\Sdk 用户path:%ANDROID_HOME%\platform-tools %ANDROID_HOME%\tools\bin
4.2 系统变量:JAVA_HOME D:\soft\JDK8\install 系统path:%JAVA_HOME%\bin
5.VSCode里面powershell执行
5.1 Conda init
5.2 conda create -n puppet python=3.9.12
5.3 pip freeze > requirements.txt(别人那里拿的包) pip install -r ..\requirements.txt
5.4 conda activate puppet
6.adb 命令 查看是否有设备连接
adb shell dumpsys activity top | findstr ACTIVITY
adb shell ps | findstr com.tencent.mm
adb devices
7.python -m tests.print_info 或者 python ./src/starter.py single --parallelism 20
8.C:\Users\dell\AppData\Local\Android\Sdk\tools\bin\uiautomatorviewer.bat 此工具可以抓元素信息
9.开启微信webview inspect
9.1 https://developers.weixin.qq.com/community/develop/doc/00086ef5e2ceb0e167ade728351c00
9.2 http://debugxweb.qq.com/?inspector=true
10.问题汇总
10.1 微信webview无法获取元素
办法:关键几步0.配置caps 1.开启微信调试 2.切上下文 3.切window_handles
caps["chromeOptions"] = {'androidProcess': 'com.tencent.mm:tools','androidUseRunningApp': True,'androidPackage': 'com.tencent.mm'}
10.2 微信webview怎么滚动到屏幕特定页面才点击按钮。或者说:webview支持点击屏幕内按钮
办法:计算native下屏幕高度,获取webview下元素location的Y值,计算滚动多少次屏幕后才能滚动到Y,就能判断(理想状态下)
https://github.com/appium/appium/issues/3896