【问题标题】:@iOSXCUITFindBy Annotations don’t work but the same code works when I use driver.findElement(By.xpath)@iOSXCUITFindBy 注解不起作用,但是当我使用 driver.findElement(By.xpath) 时,相同的代码起作用
【发布时间】:2020-01-08 22:03:15
【问题描述】:

我使用 Appium Studio 在 Windows 上自动化 iOS 应用程序。 当我使用低于它的工作正常时,但是当我使用 pagefactory 注释时。

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

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

它无法找到 xpath。我怎样才能让它工作?

【问题讨论】:

    标签: java ios appium


    【解决方案1】:

    如果您使用的是 iOSXCUITFindBy,则不应使用 xpath,因为它很慢并且很容易中断。请改用 accessibility、className、id、iOSClassChain、iOSNsPredicate 或 tagName 策略。

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

    如果采用不同的策略,我会这样做:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-18
      • 2015-09-03
      • 2013-10-22
      • 1970-01-01
      • 1970-01-01
      • 2019-10-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多