gpt4 book ai didi

java - 如何使用 UIAutomation 谓词查找 UIATableView 子元素?

转载 作者:行者123 更新时间:2023-11-28 19:40:14 26 4
gpt4 key购买 nike

我正在使用 Appium(基于 Selenium)为我的 iOS 应用程序编写 UI 测试。

我的问题是按照它们出现的顺序找到 UITableView 的所有单元格和组。

例如,这个结构表示一个表,第一组打开:
UIA表组
--UIATableCell
--UIATableCell
--UIATableCell
--UIATableCell
UIA表组
UIA表组
UIA表组
UIA表组

我可以通过使用 xpath 获得上述顺序的列表:

driver.findElements(By.xpath("//UIAApplication[1]/UIAWindow[1]/UIATableView[1]/*"))

问题是 xpath 非常慢,所以我一直在使用 iOS UIAutomation 调用重构代码。

我可以用这个谓词得到所有组:

driver.findElements(MobileBy.IosUIAutomation(".tableViews()[0].groups()[0]"))

以及所有带有此内容的单元格:

driver.findElements(MobileBy.IosUIAutomation(".tableViews()[0].cells()[0]"))

但问题是我想同时保留上面的顺序。

暗中猜测:

driver.findElements(MobileBy.IosUIAutomation(".tableViews()[0].withPredicate(\"ALL valid == true\")"));

想法是利用组和单元格都有一个“有效”字段这一事实,但这只会使测试崩溃。

如何获得与我使用 xpath 所做的等效的 UIAutomation/谓词?

最佳答案

经过一番猜测,我得出了这个结论:

driver.findElements(MobileBy.IosUIAutomation(".tableViews()[0].elements()"))

它仍然很慢,但它可以工作。

关于java - 如何使用 UIAutomation 谓词查找 UIATableView 子元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34817827/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com