1

场景是我需要填写一个表格并单击一个按钮,只要我单击该按钮,就会显示一个新的弹出窗口。现在我的问题是当我点击一个按钮时;3 或 4 个空白窗口正在打开。

错误前的脚本如下:

//To click on "Check Availability" Button waiter.until(ExpectedConditions.presenceOfElementLocated(By.id("ctl00_ContentPlaceHolder1_btnCheckAvailbility"))); driver.findElement(By.id("ctl00_ContentPlaceHolder1_btnCheckAvailbility")).click(); sleep(4000);

笔记:

  1. 当我尝试手动执行时,它工作正常
  2. 当我使用 Firefox 运行相同的脚本时,它运行良好,但不幸的是,我只能在 IE 上测试这个应用程序。
  3. 我正确地声明了“IEDriverServer.exe”,所以这不是问题。

所以...朋友们对这个问题有任何帮助或想法吗???

4

2 回答 2

0

嗯...似乎有点奇怪,因为您按了一次按钮。我会向您推荐这种在按下按钮后处理新窗口的方法:

   //Store the current window handle
        String winHandleBefore = driver.getWindowHandle();

        //Perform the click operation that opens new window

        //Switch to new window opened
        for(String winHandle : driver.getWindowHandles()){
            driver.switchTo().window(winHandle);
        }

        // Perform the actions on new window

            //Close the new window, if that window no more required
    driver.close();

        //Switch back to original browser (first window)

        driver.switchTo().window(winHandleBefore);

        //continue with original browser (first window)
于 2012-11-04T15:09:08.507 回答
-3

经过多次头脑风暴后,我发现如果我们将操作系统升级到 Windows 7,那么这个问题就会得到解决。

于 2012-12-05T09:25:36.320 回答