appium自动化测试(四)
1|0一. 获取webview的html页面
1|1方法一:
1. 获取webview中对应的html页面
谷歌浏览器中输入地址:chrome://inspect(第一次使用要FQ)
前提:手机开启USB调试模式,并且用命令adb devices能够识别设备,app要打开webview页面
2. appium的日志中会显示当前系统的webdriver版本
3. 根据安卓系统的webview版本,去下载对应的chromedriver.exe
chromedriver下载地址:http://npm.taobao.org/mirrors/chromedriver
寻找webview版本39去对应的chromedriver.exe(上述网址中每个版本下都有一个notes.txt,这个文件列出了每个驱动对应的chrome版本),用下载好的chromedriver.exe取替换appium自带的chromedriver,路径是C:\Program Files (x86)\Appium\resources\app\node_modules\appium\node_modules\appium-chromedriver\chromedriver\win下的chromedriver.exe
4. 点击inpect
1|2方法二:获取网页源码:driver.page_source 存成一个html页面再在浏览器里访问定位
方法二使用的前提也是要替换appium中的chromedriver.exe
思路一:保存后利用批处理调用chrome浏览器自动打开html
在D:\python_workshop\python6_appium\Common下新建一个get_pageSource_1.py,写入下列代码
在桌面新建一个批处理文件get_pageSource_1.bat,写入如下内容
双击bat文件,立即运行,运行后的效果
补充:
1. get_pageSource_1.py和创建的html文件是同级目录
2. bat文件的作用是自动执行get_pageSource_1.py,并且调用chrome浏览器自动打开保存的source.html
3. bat文件中python后面跟的是get_pageSource_1.py的全路径,start chrome.exe后面跟的是source.html的全路径,cmd /k的作用是让cmd窗口一直保持打开状态
思路二:保存后利用chromedriver驱动浏览器自动打开html
在D:\python_workshop\python6_appium\Common下新建一个get_pageSource_2.py
在桌面新建一个批处理文件get_pageSource_2.bat,写入如下内容
双击bat文件,立即运行,运行后的效果
个人更倾向于第一种方法,其实两种方法在打开html文件耗时方面差不多
1|3方法三:找开发人员获取网页
2|0二. 定位webview内的元素
3|0三. 实例
打开app,点击webview内的收藏
运行结果
4|0四. toast提示信息获取
要获取toast信息要满足以下两个要求:
4|11. appium版本1.6.3+才支持toast获取
而appium server 1.6.3没有可视化界面,解决方案:下载appium-desktop-Setup-1.4.1-ia32.exe
4|22. 代码中必须指定automationName为:UIAutomator2
4|33. UIAutomator2只支持安卓版本5.0+
夜神模拟器默认的安卓版本是4.4.2,可以在夜神多开器中创建并启动一个5.1.1的版本
4|44. 实例
注意:
1. desired_caps["automationName"] = "UiAutomator2"
2. 要求安装jdk 1.8 64位及以上,配置其环境变量JAVA_HOME和path
3. Android系统5.0以上
4. appium server版本1.6.3以上,由app server向设备上安装两个apk,会遇到超时等问题,如果一次运行失败,请关闭掉appium server重新再运行
5. 实际在运行时,发现判断元素可见的方法不能成功(0/3),而判断元素存在的方法是可以的(3/3)
运行结果:
__EOF__

本文链接:https://www.cnblogs.com/my_captain/p/9346646.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?