java - 警报 - Selenium

标签 java selenium

最后一步中无法单击“警报”框中的“确定”。我也尝试过控制弹出窗口

public class MyFirst {
public static void main(String[] args) throws NoAlertPresentException,InterruptedException {
    System.setProperty("webdriver.chrome.driver", "C:\\Users\\kunal.bhaskar\\Downloads\\chromedriver.exe");

      WebDriver driver = new ChromeDriver();
      String baseUrl = "https://www.goindigo.in";

      driver.get(baseUrl);


     driver.findElement(By.xpath("//*[@id=\"roundWay\"]/form/div[1]/ul/li[1]/input[1]")).clear();      
     driver.findElement(By.xpath("//*[@id=\"roundWay\"]/form/div[1]/ul/li[1]/input[1]")).sendKeys("Patna");
     driver.findElement(By.xpath("//*[@id=\"roundWay\"]/form/div[1]/ul/li[2]/input[1]")).sendKeys("Bengaluru");
     driver.findElement(By.xpath("//*[@id=\"roundWay\"]/form/div[1]/ul/li[3]/input")).click();
     Select adult = new Select(driver.findElement(By.xpath("//*[@id=\"roundWay\"]/form/div[1]/ul/li[3]/div/div[1]/label[2]/select")));
    adult.selectByVisibleText("2");
    driver.findElement(By.xpath("//*[@id=\"depart-date\"]")).clear();
    driver.findElement(By.xpath("//*[@id=\"depart-date\"]")).sendKeys("18 Oct 2017");
    driver.findElement(By.xpath("//*[@id=\"return-date\"]")).clear();
    driver.findElement(By.xpath("//*[@id=\"return-date\"]")).sendKeys("28 Oct 2017");
    driver.findElement(By.xpath("//*[@id=\"roundWay\"]/form/div[1]/div/div/div/ul/li[1]/div/div[1]")).click();
    driver.switchTo().alert().accept(); 

}

最佳答案

实际上,这不是警报。这是一个模态框,这就是为什么您会收到“无警报存在异常”的原因。

模态框代码。

WebElement findElement = driver.findElement(By.xpath("//*[@id='globalModal']/div/div/div[3]/button"));

JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("arguments[0].click()", findElement);

在代码中写入这些行,而不是 driver.switchTo().alert().accept();。 它会工作得很好。

关于java - 警报 - Selenium ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46424418/

相关文章:

java - 如何从 firebase 读取并在评级栏中显示

java - 如何使用 actions 类在相邻窗口或选项卡中打开链接(右键单击 element->sendkeys ArrowDown ->sendkeys Enter)

java - 如何仅从子元素获取文本 - Webdriver - Java

java - 我如何通过 lambda 创建字符串比较器?

java - 如何在 Java 中使用 Selenium 单击此链接

python - 在 python selenium 中切换窗口时出错

java - 无法使用 selenium 从文本字段获取文本

java - 如何使用Java在Alfresco 5.0中获取对等关联节点?

java - 安卓服务器: why it times out incoming connections randomly?

java - 出现频率最高的词