Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Selenium和Java处理普通Javascript警报对话框按钮?_Java_Selenium_Automation_Webdriver_Alert - Fatal编程技术网

如何使用Selenium和Java处理普通Javascript警报对话框按钮?

如何使用Selenium和Java处理普通Javascript警报对话框按钮?,java,selenium,automation,webdriver,alert,Java,Selenium,Automation,Webdriver,Alert,我有这样的HTML页面 <input type="button" id="btnlogin" value="Login" onclick="goToRegister()"> 场景: 当我使用TestNG Suite执行这些脚本时,我将进入登录页面,脚本将凭证传递给用户名和密码,最后单击登录按钮 单击“登录”按钮后,会出现javascript警报…然后我会再次看到登录页面,而不是Register.html:( 问题:如何处理这种情况 谢谢, Karunagara Pandi G尝试w

我有这样的HTML页面

<input type="button" id="btnlogin" value="Login" onclick="goToRegister()">
场景:

当我使用TestNG Suite执行这些脚本时,我将进入登录页面,脚本将凭证传递给用户名和密码,最后单击登录按钮

单击“登录”按钮后,会出现javascript警报…然后我会再次看到登录页面,而不是Register.html:(

问题:如何处理这种情况

谢谢,

Karunagara Pandi G

尝试window.location.assign(“);基本上,将http://添加到您的URLHi MikeJRamsey56,谢谢您的回复。我尝试了您的代码,但没有成功。我得到了登录页面。Karunagara,您的方法有点混乱。JS方法将页面重定向到
Register.html
。现在,在selenium@Test中,在
alert.accept()之后
您自己正在进行html导航。是否应该有一个正确页面的断言而不是
driver.get()
?如果我理解错误,请纠正我。
<script language="javscript" type="text/javascript">
    function goToRegister()
    {
        alert("Login Successful!");
        window.location.href="Register.html";
    }
</script>
  @Test
  public void goToRegisterPage()
  {
      System.out.println("goToRegisterPage");
      WebDriverWait wait = new WebDriverWait(driver,10);
      Alert alert = wait.until(ExpectedConditions.alertIsPresent());
      alert.accept();

      driver.get("file:///X://selenium//Register.html");
  }

  @BeforeMethod
  public void beforeMethod()
  {
      System.out.println("beforeMethod called " + visitcount++);

      System.setProperty("webdriver.gecko.driver", "X:\\Selenium\\geckodriver-v0.17.0-win32\\geckodriver.exe");
      driver = new FirefoxDriver();
      driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

      driver.get("file:///X://selenium//Login.html");
  }