【问题标题】:driver.navigate().back(); isn't working in appium iosdriver.navigate().back();在 appium ios 中不起作用
【发布时间】:2017-07-13 20:13:26
【问题描述】:

我刚开始从事自动化 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");


    }
  }

我可以使用上面的 sn-p 但是 ((IOSDriver) driver).navigate().back();或 driver.navigate().back() 在 appium ios 中不起作用。当我手动单击屏幕右上角的后退按钮时,它工作得非常好。但它不能以自动化的方式工作。我错过了什么吗。任何工作示例都会非常有帮助。提前致谢。

【问题讨论】:

    标签: java appium-ios


    【解决方案1】:

    来自docs

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

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

    【讨论】:

    • 如何在 iOS 中找到后退按钮?例如:假设我正在使用分享应用程序如何从我的音乐返回启动屏幕??
    • @syndy1989 我不熟悉应用程序和原生 IOS 应用程序。您需要找到它并点击它。
    猜你喜欢
    • 2020-09-05
    • 1970-01-01
    • 2016-11-16
    • 2016-05-22
    • 1970-01-01
    • 2015-07-18
    • 2018-10-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多