线程 "main" org.openqa.selenium.NoAlertPresentException 中的异常:未打开警报
Exception in thread "main" org.openqa.selenium.NoAlertPresentException: no alert open
使用Selenium Webdriver,登录后尝试打开fb页面,登录后弹出如下框
"显示通知
允许和阻止”
我想要select“允许”按钮。
我收到一条错误消息
Exception in thread "main"
org.openqa.selenium.NoAlertPresentException: no alert open
请帮忙。
这是我写的代码:
System.setProperty("webdriver.chrome.driver","C:\Users\ABCD\Desktop\chromedRiver.exe");
WebDriver driver=new ChromeDriver();
driver.get("http://www.facebook.com");
driver.findElement(By.xpath(".//*[@id='email']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='pass']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='u_0_m']")).click();
Thread.sleep(2000);
Alert alert=driver.switchTo().alert();
String msg= alert.getText();
System.out.println(msg);
Thread.sleep(2000);
alert.accept();
这不是 Zach 所说的警报,它是浏览器通知,在您的情况下,您只需使用 Robot
[=] 发送 Space 键即可按下允许按钮20=] 在 Java:
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_SPACE);
robot.keyRelease(KeyEvent.VK_SPACE);
所以代码是:
System.setProperty("webdriver.chrome.driver","C:\Users\ABCD\Desktop\chromedRiver.exe");
WebDriver driver=new ChromeDriver();
driver.get("http://www.facebook.com");
driver.findElement(By.xpath(".//*[@id='email']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='pass']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='u_0_m']")).click();
Thread.sleep(4000);
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_SPACE);
robot.keyRelease(KeyEvent.VK_SPACE);
Thread.sleep(2000);
我不确定是否有办法像您尝试的那样检索通知消息。
使用Selenium Webdriver,登录后尝试打开fb页面,登录后弹出如下框
"显示通知
允许和阻止”
我想要select“允许”按钮。
我收到一条错误消息
Exception in thread "main" org.openqa.selenium.NoAlertPresentException: no alert open
请帮忙。
这是我写的代码:
System.setProperty("webdriver.chrome.driver","C:\Users\ABCD\Desktop\chromedRiver.exe");
WebDriver driver=new ChromeDriver();
driver.get("http://www.facebook.com");
driver.findElement(By.xpath(".//*[@id='email']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='pass']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='u_0_m']")).click();
Thread.sleep(2000);
Alert alert=driver.switchTo().alert();
String msg= alert.getText();
System.out.println(msg);
Thread.sleep(2000);
alert.accept();
这不是 Zach 所说的警报,它是浏览器通知,在您的情况下,您只需使用 Robot
[=] 发送 Space 键即可按下允许按钮20=] 在 Java:
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_SPACE);
robot.keyRelease(KeyEvent.VK_SPACE);
所以代码是:
System.setProperty("webdriver.chrome.driver","C:\Users\ABCD\Desktop\chromedRiver.exe");
WebDriver driver=new ChromeDriver();
driver.get("http://www.facebook.com");
driver.findElement(By.xpath(".//*[@id='email']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='pass']")).sendKeys("xxx");
driver.findElement(By.xpath(".//*[@id='u_0_m']")).click();
Thread.sleep(4000);
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_SPACE);
robot.keyRelease(KeyEvent.VK_SPACE);
Thread.sleep(2000);
我不确定是否有办法像您尝试的那样检索通知消息。