单击特定webelement

时间:2017-04-26 11:15:02

标签: java selenium selenium-webdriver

在我的应用程序中,我正在处理一个窗口,当我们使用selenium WebDriver和java点击特定的web元素时,该窗口会关闭。 在这里我可以点击窗口,窗口正在关闭,但下一行代码没有被执行,没有错误或异常,它只是无限期地等待。可以任何人找到我同样的解决方案?

2 个答案:

答案 0 :(得分:0)

似乎在点击butoon和关闭窗口之后,由于一些未知原因,驱动程序仍在等待从Click()获得响应。所以我建议不要使用element的Click()方法。使用javascript点击它。

尝试以下代码:

driver.manage().timeouts().setScriptTimeout(20, TimeUnit.SECONDS);

WebElement closeBtn= webDriver.findElement(btn_locator);

JavascriptExecutor executor = (JavascriptExecutor) webDriver;

executor.executeScript("arguments[0].click();", closeBtn); 

if" executor.executeScript"不起作用然后尝试" executor.executeAsyncScript":

executor.executeAsyncScript("arguments[0].click();", closeBtn);

如果您已切换到新窗口,请切换回主窗口

答案 1 :(得分:-1)

关闭窗口后写下面的代码: 首先尝试这个

driver.switchTo().defaultContent();

如果上述代码不起作用,请尝试以下代码。

driver.switchTo().activeElement()