网站建设与设计教程视频教程,会计,国内最近重大新闻2024,哔哩哔哩视频大全文章目录 Appium元素定位第一类#xff1a;属性定位第二类#xff1a;路径定位 常见问题理解appium server 和 appium inspector 以及 appium-python-client的关系 appium是跨平台的#xff0c;支持OSX#xff0c;Windows以及Linux系统。它允许测试人员在不同的平台#x… 文章目录 Appium元素定位第一类属性定位第二类路径定位 常见问题理解appium server 和 appium inspector 以及 appium-python-client的关系 appium是跨平台的支持OSXWindows以及Linux系统。它允许测试人员在不同的平台iOSAndroid使用同一套API来写自动化测试脚本这样大大增加了iOS和Android测试套件间代码的复用性 appium支持多语言采用C/S设计模式只要满足client能够发送http请求给server即可。 Appium元素定位
元素定位就是寻找元素而寻找元素的方式有且只有两类
第一类属性定位
其包含 标签名、文本、各类明确的属性 因为属性无法穷举所以我们约定只对几种属性进行定位使用 1content-desc ---- 对应的appium定位方式 — accessibility id 定位方式的值 ---- content-desc 属性的值 有可能出现定位不到唯一值 2class name — 对应的appium定位方式 ---- class name 定位方式的值 ---- class name 属性的值有可能出现定位不到唯一值 3tag name — 对应的appium定位方式 ---- class name 定位方式的值 — tag name 的值appium2.x已经舍弃掉了 4resource-id ---- 对应的appium定位方式 ---- id 定位方式的值 — resource-id 的值有可能出现定位不到唯一值 5name ---- 对应的appium定位方式 ---- name 定位方式的值 — name 的值一般都是可以定位到唯一值 页面的源码是前端开发人员可以操控他怎么写这个页面源代码这个页面源代码里面的元素就有什么属性 下面的 AppiumBy 和 MobileBy 只需要用一个就行了
from appium.webdriver.common.appiumby import AppiumBy
from appium.webdriver.common.mobileby import MobileBy第二类路径定位
利用元素和元素之间的层级关系进行定位 有两种方式 1 xpath 2 css selector 路径的名称一定是用到标签名、补充描述、层级的表示符
可能会遇到一些特殊情况无论怎么定位元素都会出现N个都不能定位到你想要的元素 解决方案一使用绝对路径一定能解决 解决方案二元素内定位寻找上一级的唯一属性再定义下级的位置
常见问题
理解appium server 和 appium inspector 以及 appium-python-client的关系
appium server 是作为⼀个服务存在 appium inspector 是⼀个客户端将命令发送给了 appium server然后由appium server 将命令转化为移动设备的操作命令从⽽实现移动设备实现⾃动化操作 Appium-python-client 也是⼀个客户端我们运⾏Appium-Python-Client所⽣成的代码时其本质也是将代码发送给了appium serverappium server 将命令转化为移动设备的操作命令从⽽实现移动设备实现⾃动化操作
appium inspector 在自动化测试过程中主要是用作调试工具本质是一个客户端。