我在 IE 11 中使用 Selenium WebDriver 时遇到以下问题。当我尝试捕获警报文本时,我设法在第一个警报上获取第一个文本。一旦我接受第一个警报,就会显示第二个警报,但文本为空,尽管我可以接受。我真的不明白这个问题。你能帮我吗 ?这是我的代码: public class AlertDemo { static WebDriver driver; static Wait<WebDriver> wait; static String driverPath = "C:\\Users\\Acer\\Downloads\\IEDriverServer_Win32_2.53.1\\"; public static void main(String[] args) throws NoAlertPresentException, InterruptedException { System.out.println("*******************"); System.out.println("Lancement INTERNET EXPLORER pour tester la popup"); System.setProperty("webdriver.ie.driver", driverPath + "IEDriverServer.exe"); driver = new InternetExplorerDriver(); driver.manage().window().maximize(); // Alert Message handling driver.get("http://demo.guru99.com/test/delete_customer.php"); driver.findElement(By.name("cusid")).sendKeys("53920"); driver.findElement(By.name("submit")).submit(); // Switching to Alert try { WebDriverWait wait = new WebDriverWait(driver, 2); wait.until(ExpectedConditions.alertIsPresent()); Alert alert = driver.switchTo().alert(); // Capturing alert message. String alertMessage = driver.switchTo().alert().getText(); // Displaying alert message System.out.println(alertMessage); // Accepting alert System.out.println("On accepte OK"); alert.accept(); Thread.sleep(500); //Pour le message en retour /*wait = new WebDriverWait(driver, 3);这样做的目的是获取第二个警报中包含的字符串文本。
1 回答
MMMHUHU
TA贡献1834条经验 获得超8个赞
当您接受第一个警报时,第二个警报带有“不要让此页面创建更多消息”复选框。在 Internet Explorer 驱动程序中,它以某种方式阻止它被读取。其他浏览器如Chrome,没有任何问题。
要解决此问题,您只需将网站添加到trusted sites
Internet Explorer 选项中。然后,您可以获得第二个警报的文本。
添加回答
举报
0/150
提交
取消