appium---webview(H5)元素定位
2024-08-31 08:13:48
我们在做UI自动化的时候,肯定需要元素定位,那么webview(H5)的元素怎么定位呢?
webview定位方法
方法一:
1、打开chrome浏览器,输入chrome://inspect
2、连接手机,如果没有加载出来设备,请检查是否连接手机以及打开开发者模式
3、打开手机app找到需要定位的页面(webview)然后刷新chrome网页,这个时候会出现一些内容,点击inspect或者输入在网页中输入地址。(需要翻墙)
4、进行点击查询按钮,这样就可以定位元素位置了。这样就按照selenium定位方法了。
方法二:
1、通过appium-desktop客户端进行查看(安静电脑上装的是appium命令行,只说方法)
2、填写appium信息,填写完成后,打开手机app,点击start session就可以定位元素了
方法三:
1、如果前面2种都没有办法定位的话,使出必杀技,通过 page_source 方法进行获取页面HTML,保存在本地,然后进行定位
# coding:utf-8
from appium import webdriver
import time
desired_caps = {
'platformName': 'Android', # 测试版本
'deviceName': 'emulator-5554', # 设备名
'platformVersion': '5.1.1', # 系统版本
'appPackage': 'com.yipiao', #apk的包名
'appActivity': '.activity.LaunchActivity', # apk的launcherActivity
"noReset": True, # 不清空数据
}
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
time.sleep(6)
driver.find_element_by_xpath('//*[@text="下次再说"]').click()
time.sleep(3)
driver.find_element_by_xpath('//*[@text="我的"]').click()
# 点击产品意见
time.sleep(3)
driver.find_element_by_xpath('//*[@text="产品意见"]').click()
# 获取全部上下文
cons = driver.contexts
print(cons)
# 跳转到webview中
driver._switch_to.context("WEBVIEW_com.yipiao")
print(driver.context)
# 获取页面html,并保存到本地
p = driver.page_source
with open('123.html','wb')as f:
f.write(p.encode('utf-8'))
2、进行通过浏览器打开。
3、通过selenium的方法进行定位元素
方法有很多种,那种简单用那种,重要的是学会思路,思路学会了,就很简单了~
如果感觉安静写的对您有所帮助,点个关注,持续更新~~哪里有写错的地方,或者不懂的地方,可以下方留言,看到后第一时间回复~~
最新文章
- js中定义类的方式
- iOS-- 重要的链接
- 【BZOJ4260】 Codechef REBXOR 可持久化Trie
- Linux设置ssh无密码登陆
- 02.iOS开发网络篇—HTTP协议
- shell if判断的种类
- POJ 1459(EK)
- VS2010配色方案
- 模拟游客一天的生活与旅游java程序代写源码
- BZOJ1135: [POI2009]Lyz
- <;WEB>;平板_手机开发_13 个处理触摸事件和多点触摸的JS 库
- 项目管理:关于SVN的实践
- UGUI实现NGUI的UIEventListener功能
- 今天聊一聊Java引用类型的强制类型转换
- Sqlserver中的视图
- 从函数式编程到Ramda函数库(二)
- php接口 接受ios或android端图片; php接收NSData数据
- dom4j: 生成XML时文本中回车换行无效
- localstorage和sessionstorage上手使用记录
- MAC OS下使用OpenSSL生成私钥和公钥的方法
热门文章
- QQ全量上云,你想了解的技术细节都在这
- 案例-pyqt进度条案例
- vue 富文本编辑器 项目实战用法
- 剑指offer-面试题25-合并两个排序的链表-链表
- eclipse运行错误提示 Failed to load D:\Android\sdk\build-tools\26.0.0-preview\lib\dx.jar
- java学习笔记之IO编程—File文件操作类
- VSCode C语言编程(二)新建项目及编译
- Date工具类中CompareTo()
- 一个简单的java web项目 仅实现添加
- vue 多组件路由处理方法