@iOSXCUITFindBy注释不起作用,但是当我使用driver.findElement(By.xpath)时,相同的代码起作用

时间:2019-09-06 02:31:59

标签: java ios appium

我使用Appium Studio在Windows上自动执行iOS应用。 当我在其正常工作之下使用它时,但在我使用pagefactory注释时。

 driver.findElement(By.xpath("//*[@class='UIAButton'][2]")).click();

 @iOSXCUITFindBy(xpath="//*[@class='UIAButton'][2]")
 MobileElement contactButton;

它找不到xpath。我该如何运作?

1 个答案:

答案 0 :(得分:0)

如果使用的是iOSXCUITFindBy,则不应使用xpath,因为它运行缓慢且容易中断。改为使用可访问性,className,id,iOSClassChain,iOSNsPredicate或tagName 策略。

除了Xpath搜索不适用于注释中的相同表达式外,还请使用其他xpath表达式。

采用其他策略,我会这样做:

@iOSXCUITFindBy(iOSClassChain = "**/XCUIElementTypeButton[2]")
MobileElement contactButton;