【问题标题】:How to pass values from one page to another page in Firefox using Selenium WebDriver?如何使用 Selenium WebDriver 将值从一个页面传递到 Firefox 中的另一个页面?
【发布时间】:2013-12-27 12:32:52
【问题描述】:

我有一个包含许多输入字段的注册页面。当我点击 Hyperlink 即注册链接时,此注册页面将打开,它将打开一个新选项卡,然后我需要输入相应输入字段的值,例如 电子邮件地址First NameLast Name 等通过脚本 (selenium webdriver - java)。

截至目前,它会打开一个带有注册页面的新窗口,但不会将值放在相应的字段中..

我使用了以下脚本:

webDriver.findElement(By.name("email")).sendKeys("paul@vendormate.vm");
webDriver.findElement(By.id("vmBtnSubmitExpReg")).click();      webDriver.findElement(By.name("confirmEmail")).sendKeys("paul@vendormate.vm");

谁能告诉我应该怎么做才能将值放在注册页面中?

谢谢

【问题讨论】:

    标签: java firefox selenium tabs


    【解决方案1】:

    您需要更改 webdriver 的窗口

     String currentWindow = driver.getWindowHandle(); //saves current window name
     //opens new window
     String popupWindow = webDriverExtensions.popupHandle(currentWindow); //now you have second window name
     driver.switchTo().window(popupWindow); // switched to registration window
     // doing your job
     driver.close(); //closing windows
     driver.switchTo().window(currentWindow); //return back to main window
    
     public String popupHandle(String existingWindowHandle) {
            String popupHandle = null;
            Set<String> windowHandles = driver.getWindowHandles();
            for (String handle : windowHandles) {
                if (!handle.equals(existingWindowHandle)) {
                    popupHandle = handle;
                    break;
                }
            }
            return popupHandle;
        }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-18
      • 1970-01-01
      • 1970-01-01
      • 2015-04-04
      • 1970-01-01
      • 2011-11-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多