Java Selenium测试-未保存通过弹出窗口添加的文本

Java Selenium测试-未保存通过弹出窗口添加的文本,java,selenium,selenium-webdriver,automated-tests,Java,Selenium,Selenium Webdriver,Automated Tests,我正在尝试使用SeleniumWeb驱动程序自动化一个网站。 在网站上,有一个用于创建门名称的弹出表单,其中有一个文本字段用于输入文本。我尝试使用selenium,弹出窗口出现,但给定的文本无法保存。要弹出窗口,它工作正常。需要指南来完成操作 我使用的方法如下: Alert alert=driver.switchTo().alert(); driver.switchTo().alert().sendKeys("New Gate"); alert.accept(); System.out.pri

我正在尝试使用SeleniumWeb驱动程序自动化一个网站。 在网站上,有一个用于创建门名称的弹出表单,其中有一个文本字段用于输入文本。我尝试使用selenium,弹出窗口出现,但给定的文本无法保存。要弹出窗口,它工作正常。需要指南来完成操作

我使用的方法如下:

Alert alert=driver.switchTo().alert();
driver.switchTo().alert().sendKeys("New Gate");
alert.accept();
System.out.println(alert.getText());
  • 元素由Xpath元素定位器标识
  • 我还提供了文本和URL,这是我从堆栈中获得的另一种方法

  • 你需要先切换到弹出窗口。然后可以访问弹出窗口中的元素

     // save your main window handle
        String MainWindow=driver.getWindowHandle();
    
        // Get all window handle    
        Set<String> handles = driver.getWindowHandles();
    
    最后,再次切换到主窗口

     driver.switchTo().window(MainWindow);
    

    你需要先切换到弹出窗口。然后可以访问弹出窗口中的元素

     // save your main window handle
        String MainWindow=driver.getWindowHandle();
    
        // Get all window handle    
        Set<String> handles = driver.getWindowHandles();
    
    最后,再次切换到主窗口

     driver.switchTo().window(MainWindow);
    

    如果是警报,则应按照您的要求采取正确的处理步骤

  • 切换到并发出警报
  • 输入文本
  • 输入文本
  • 接受

    Alert alert=driver.switchTo().alert();
    alert.sendKeys("New Gate");
    System.out.println(alert.getText());
    alert.accept();`
    
  • 如果它是一个模型弹出窗口,那么尝试定位弹出窗口元素并直接使用发送键

    示例代码:

    WebDriverWait wait = new WebDriverWait(driver, 20);
    wait.until(ExpectedConditions.visibilityOfElementLocated(By.your_popup_locator));
    driver.findElement(By.you_textbox_locator).sendKeys("expected text");
    

    如果是警报,则应按照您的要求采取正确的处理步骤

  • 切换到并发出警报
  • 输入文本
  • 输入文本
  • 接受

    Alert alert=driver.switchTo().alert();
    alert.sendKeys("New Gate");
    System.out.println(alert.getText());
    alert.accept();`
    
  • 如果它是一个模型弹出窗口,那么尝试定位弹出窗口元素并直接使用发送键

    示例代码:

    WebDriverWait wait = new WebDriverWait(driver, 20);
    wait.until(ExpectedConditions.visibilityOfElementLocated(By.your_popup_locator));
    driver.findElement(By.you_textbox_locator).sendKeys("expected text");
    

    您如何尝试获取文本字段的id?您如何尝试获取文本字段的id?我们尝试了这个..我已经编辑了这个问题。请也看看。谢谢这是一个弹出窗口,对吗?开关坏了。编辑我的答案。我们尝试了这个。我编辑了这个问题。请也看看。谢谢这是一个弹出窗口,对吗?开关坏了。编辑我的答案。