如何在appium 1.6中获取iOS警报文本

时间:2016-10-17 17:21:38

标签: xpath appium appium-ios

在升级到XCode 8以及随后的Appium 1.6和IOS 10进行一些appium测试之前,我曾经能够使用下面的XPath来捕获警报中的主要文本。

@iOSFindBy(xpath = "//UIAAlert/UIAScrollView/UIAStaticText[2]")
private MobileElement alertText;

然而,某些事情发生了变化,这已不再适用。我仍然希望能够在警报文本上断言并且不想使用IOSMobileCapabilityType.AUTO_DISMISS_ALERTS功能。

是否有人找到了获取提醒文字的方法?

奖金问题:所有这些XPath都记录在哪里?我在一些随机的论坛上发现了它,但我找不到任何官方文档或弄清楚它与XCode中捕获的View Hierarchy的关系。

1 个答案:

答案 0 :(得分:1)

回答我自己的问题以防万一。 由于appium检查员不使用XCode8,打印屏幕布局XML的最佳方法就是执行System.out.println(driver.getPageSource());

然后你可以按照结构进行操作,如

@iOSFindBy(xpath = "//XCUIElementTypeAlert//XCUIElementTypeStaticText[2]")
private MobileElement alertText;

我从这个问题得到了:Finding elements by xpath in Appium using XCUITEST driver