【问题标题】:iOS Appium 1.9 - Clicking on parent of element using iOS Class ChainiOS Appium 1.9 - 使用 iOS 类链单击元素的父级
【发布时间】:2019-04-22 02:14:31
【问题描述】:

我在收藏视图中有一张无法点击的图片。 Appium 可以很好地找到元素,但使用 is_displayed() 函数总是返回 false。我阅读了 iOS 类链函数,因此尝试使用它来单击父图像 XCUIElementTypeCell(可以单击,但没有标签或名称值,烦人)

我的尝试:

self._driver.find_element(By.IOS_CLASS_CHAIN, "**/XCUIElementTypeImage[`name BEGINSWITH \"Click Me\"`]/**/XCUIElementTypeOther/**/XCUIElementTypeCell")

这给出了NoSuchElementException

应用程序结构如下所示:

因此,中心的XCUIElementTypeImage 是我尝试使用在本示例中等于“单击我”的名称来定位的目标。父 XCUIElementTypeOther 也可以找到,但不可点击,所以对我来说唯一的解决方案是跳两级到 XCUIElementTypeCell

P.S 请不要 Xpath 建议

P.S2 感谢您的帮助

【问题讨论】:

  • 那么,你想去第一个XCUIElementTypeCell吗?为什么不试试这个:**/XCUIElementTypeCollectionView/XCUIElementTypeCell[1]。 AFAIK,我们无法转到 ios 类链中的父元素。

标签: appium appium-ios python-appium


【解决方案1】:

尝试以下方法:

"**/XCUIElementTypeCell[$type=XCUIElementTypeImage AND name BEGINSWITH 'Click Me'$]"

"**/XCUIElementTypeCell[$type='XCUIElementTypeImage' AND name BEGINSWITH 'Click Me'$]"

【讨论】:

  • 谢谢,我试试看,'$' 符号到底指的是什么?
  • 不起作用,似乎它正在拾取内部元素。我已经设法通过使用 xpath 命令并在最后添加“parent::XCUIElementTypeOther”来使其工作,所以它不会太长
  • @Alesia D,我认为你必须输入 type == 'XCUIElementTypeImage',而不是单个等号。
  • 请帮助我面临同样的问题 - 在应用程序结构中它显示 我必须点击 XCUIElementType 单元格 - 我复制的最后一个元素
猜你喜欢
  • 1970-01-01
  • 2019-02-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-02
  • 2016-08-21
  • 2018-05-20
  • 2015-10-17
相关资源
最近更新 更多