appium ios find_elements 模糊搜索

appium 中的find_elements_by_xpath,可以使用模糊搜索,匹配的属性根据appium中的Inspector(即放大镜)获取,如@name,@label等


contains是一个字符串查找函数
  语法是:fn:contains(string1,string2),表示如果 string1 包含 string2,则返回 true,否则返回 false。
  例如:contains('XML','XM'),结果:true。

find_elements_by_xpath('//UIAApplication[1]/UIAWindow[1]/UIAStaticText[contains(@name,"as")')


match是一个匹配正则表达式的函数
  语法是:fn:matches(string,pattern),表示如果 string 参数匹配指定的模式,则返回 true,否则返回 false。
  例如:matches("12", "[0-9]{1,2}"), 结果:true。

find_elements_by_xpath('//UIAApplication[1]/UIAWindow[1]/UIAStaticText[matches(@name,"as")')

正则表达发现不支持


### 使用Python进行Appium移动自动化测试 #### 安装必要的库 为了使用Python执行Appium测试,安装特定版本的Selenium WebDriver是必需的操作之一。对于Mac OS环境下的配置,可以从Selenium官网下载适用于Python的WebDriver包,例如`selenium-2.39.0.tar.gz`[^1]。 #### 初始化驱动程序实例 创建一个新的会话来控制设备或模拟器/真机上的应用程序。这通常涉及到设置Desired Capabilities,这些能力描述了要启动的应用以及连接到哪个平台等细节。 ```python from appium import webdriver desired_caps = { 'platformName': 'iOS', 'automationName': 'XCUITest', # or another suitable value based on your setup 'deviceName': 'iPhone Simulator', 'app': '/path/to/app.app' } driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) ``` #### 查找UI元素并交互 利用提供的API可以方便地定位应用内的控件并与之互动。针对iOS平台,有一种特别的方式叫做`find_element_by_ios_uiautomation`,它允许开发者通过编写类似于JavaScript表达式的字符串来精确定位界面组件。此方法接收一个参数`uia_string`,该参数代表目标元素的名字,在iOS UIAutomation库中的表示形式;其调用方式如下所示: ```python element = driver.find_element_by_ios_uiautomation('.elements()[1].cells()[2]') ``` 上述代码片段尝试获取表格视图中第二行第三列单元格对应的Web元素对象[^2]。 #### 测试报告生成 框架能够自动生成详尽的HTML格式测试报告(借助Extent API),其中不仅包含了来自Appium服务器的日志记录还有ADB日志。当遇到失败情况时,还会自动截取屏幕截图作为辅助诊断材料的一部分[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值