通过selenium脚本启动时,网站的功能正在发生变化

时间:2015-01-10 05:43:15

标签: selenium selenium-webdriver webdriver

我正在测试应用程序的注册功能。如果需求字段留空,如果我们尝试单击注册按钮,则会出现一个警告框,显示错误消息。         我已经编写了脚本来处理警告框但是当我执行脚本时,警报框没有出现,而是在页面顶部以红色显示相同的错误消息,或者出现此消息" 已经存在电子邮件请用户另一封电子邮件"即使所有字段都留空。只有通过脚本打开网站时才会显示错误消息。

   While some times the alert boxes appear for just a half second or less and the script throws UnhandledAlertException.

我无法分享网站详细信息。这是我编写的脚本的一部分

  WebElement fname = driver.findElement(By.id("fname"));
  fname.sendKeys("");
   driver.findElement(By.id("registration")).click();
    if(fname.getAttribute("value").equals("")) {
      Alert al=d.switchTo().alert();
       al.accept();
   }

任何人都可以向我解释网站的这种行为。谢谢。

1 个答案:

答案 0 :(得分:0)

您可以清除电子邮件文本字段,而不是发送空白。这样,它会更清晰,并且每次都确认文本字段为空,并且会出现警报弹出窗口。

您可以使用以下代码清除电子邮件文本字段:

WebElement email=d.findElement(By.id("email"));
email.clear();

接受警报的代码: -

以下代码将等待20秒以显示警报,然后接受它。

driver.findElement(By.id("registration")).click(); 
try{
    WebDriverWait wait = new WebDriverWait(driver,20);
    Alert alert = wait.until(ExpectedConditions.alertIsPresent());
    alert.accept();
}catch(Throwable e){
    System.err.println("Error found while accepting alert: "+ e.getMessage());
}