Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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
Java 使用webdriver切换到后,Chrome窗口闪烁_Java_Selenium_Webdriver_Selenium Chromedriver - Fatal编程技术网

Java 使用webdriver切换到后,Chrome窗口闪烁

Java 使用webdriver切换到后,Chrome窗口闪烁,java,selenium,webdriver,selenium-chromedriver,Java,Selenium,Webdriver,Selenium Chromedriver,我目前正在用Selenium和chromedriver在Java中测试一个具有多个“Chrome选项卡”的应用程序 我想要实现的目标是在选项卡之间切换 因此,没问题,我使用: driver.switchTo().window("CDwindow-***************"); 它很好用。但我有一些页面是我面临的问题。这些页面很简单,它们侦听事件TestLoad,并执行以下操作: <!DOCTYPE html> <html> <head> <

我目前正在用Selenium和chromedriver在Java中测试一个具有多个“Chrome选项卡”的应用程序

我想要实现的目标是在选项卡之间切换

因此,没问题,我使用:

driver.switchTo().window("CDwindow-***************");
它很好用。但我有一些页面是我面临的问题。这些页面很简单,它们侦听事件
TestLoad
,并执行以下操作:

<!DOCTYPE html>
<html>
<head>
    <meta charset=utf-8 />
    <title>test</title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
</head>
<body>
<script>
document.addEventListener('TestLoad', onTestLoad, false);
function onTestLoad(event) {
    alert('TestLoad event');
}
</script>

</body>
</html>
现在,当我切换到此类页面,并尝试通过webdriver请求一些内容时,如
dirver.getTitle()
页面会“闪烁”!它不会重新加载页面,但如果页面包含动画,它将重置动画。似乎它重新加载了选项卡实例

复制的简单方法是在获取标题之前手动打开chrome开发工具,它将关闭它

你知道我为什么会有这种行为吗?

提前感谢。

您找到问题的解决方案了吗?我仅在使用WebDrivero switchWindow方法时遇到了相同的情况:(
$(document).ready(function() {
    var evt = document.createEvent("Event");
    evt.initEvent("TestLoad", true, true);
    setTimeout(function(){document.dispatchEvent(evt)}, 1);
});