我的要求: 我想在我的页面上显示警报几秒钟才能阅读。如果有任何功能可以帮助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();
上面的代码可以很好地显示我的det值,但是它会在很短的时间内显示警报并关闭警报。那么我如何在关闭之前的几秒钟内发出警报以显示我的详细信息
答案 0 :(得分:5)
请勿使用警报显示信息。使用像TestNG或JUnit这样的框架来记录通过/失败,然后查看日志。您希望自动化能够尽可能快地完成。当您需要手动干预或有人观看脚本运行以查看它是否通过时,它会失去很多自动化的目的。