driver.navigate()背面();在appium ios

时间:2017-07-13 12:06:29

标签: java appium-ios

我刚开始从事自动化ios测试。我使用driver.getPageSource()获取了应用程序启动页面的Button元素。我已将我的按钮元素添加到ArrayList。

ArrayList<String> buttonresourceIds = pasr.XmlParser("/Users/Desktop/Testing.txt");

我正在尝试使用循环迭代数组以找到可单击的按钮元素

for (int i=0; i<=buttonresourceIds.size(); i++)
    {
        //driver.findElementByName(buttonresourceIds.get(i)).isDisplayed();
        if(driver.findElementsByName(buttonresourceIds.get(i)) != null){
            WebElement button=driver.findElementByName(buttonresourceIds.get(i));
            button.click();
            try {
                Thread.sleep(5000);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
        }

            ((IOSDriver<WebElement>) driver).navigate().back();
    }
        else

        {
    continue;
        }

        System.out.println("clicking:"+buttonresourceIds.get(i));
       driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
       System.out.println(i);
       System.out.println("pass");


    }
  }

我可以使用上面的代码段点击小部件但是((IOSDriver)驱动程序).navigate()。back();或者driver.navigate()。back()在appium ios中不起作用。当我手动单击屏幕右上角的后退按钮时,它可以正常工作。但它不是以自动方式工作。我错过了什么。任何工作示例都会非常有用。提前致谢。

1 个答案:

答案 0 :(得分:0)

来自docs

  

在浏览器的历史记录中移回一个“项目”。

如果点击该按钮没有移动到具有不同网址的新网页,driver.navigate().back()也没有任何地方可以返回给您。您必须单击应用程序中的back按钮。