我的要求: 我想在我的页面上显示警报几秒钟以供阅读。如果有任何功能对 Selenium Web 驱动程序有帮助。
我是这个自动化领域的新手,我研究了显式等待,因此我使用如下所示的显式等待,但它没有在我需要的时间内显示警报。
下面是我的代码,
WebDriverWait wait = new WebDriverWait (driver, 30);
JavaScriptExecutor js = (JavascriptExecutor)driver;
wait.until(ExpectedConditions.elementToBeClickable(By.id("username"))).clear();
wait.until(ExpectedConditions.elementToBeClickable(By.id("username"))).sendKeys(username);
wait.until(ExpectedConditions.elementToBeClickable(By.id("password"))).clear();
wait.until(ExpectedConditions.elementToBeClickable(By.id("password"))).sendKeys(password);
wait.until(ExpectedConditions.elementToBeClickable(By.id("Login"))).click();
String det1 = driver.findElement(By.id(elem id)).getText();
String det2 = driver.findElement(By.id(elem id)).getText();
String det3 = driver.findElement(By.id(elem id)).getText();
String det4 = driver.findElement(By.id(elem id)).getText();
js.executeScript("window.alert('Values are..'"+det1+" "+det2+" "+det3+" "+det4"+'')");
driver.switchTo().alert().accept();
上面的代码很好地显示了我的检测值,但是它在很短的时间内显示了警报并关闭了警报。那么我如何让警报在关闭之前的几秒钟内显示我的详细信息.
最佳答案
不要使用警报来显示信息。使用 TestNG 或 JUnit 等框架来记录通过/失败,然后查看日志。您希望自动化尽可能快地进行。当您需要手动干预或有人观察脚本运行以查看它是否通过时,它违背了自动化的许多目的。
关于javascript - 如何在selenium中显示10秒内的警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48404843/