Selenium IE:32位IEDriverServer无法加载,64位文本很慢

时间:2017-09-24 02:34:49

标签: java selenium selenium-webdriver selenium-iedriver

我正在运行Jenkins的最新selenium代码(3.5.3),我的测试通过网格发送到运行Windows Server 2012的VM节点。如果我尝试运行IEDriverServer 64位(3.5.1)我的节点,sendkeys是无法忍受的慢。我已经多次读过使用32位IEDriverServer可以工作,但是当我执行测试时它甚至都没有加载IE。

疯狂的是,昨天工作了9个小时(我有数百个测试,这是正确的时间表)。当我今天再次重新运行测试时,它们开始很好,但几个小时后我注意到我的测试没有通过,所以我检查了VM并且文本正在爬行。为什么会发生这样的事情?理论上我理解慢的sendkeys是因为比特不匹配,但是为什么64位exe会工作几个小时然后停止工作呢?

无论它值多少,这都是我的webdriver定义:

InternetExplorerOptions ieOptions = new InternetExplorerOptions()
                .destructivelyEnsureCleanSession();
caps = DesiredCapabilities.internetExplorer();
caps.setBrowserName("internet explorer");
caps.setCapability(InternetExplorerDriver.ENABLE_PERSISTENT_HOVERING, false);
WebDriver driver = new RemoteWebDriver(new URL(nodeURL), ieOptions.merge(caps));
return driver;

我一直在研究并试图解决这个问题几个星期。这让我疯狂。有任何想法吗?非常感谢!

编辑:看看它开始变慢的测试,结果发现我在该测试中删除了一个cookie。从我读到的关于IE的内容来看,它并不总能正确地删除cookie。我可以轻松地重新编写该测试,但现在无论正在运行什么测试,文本总是运行缓慢。有没有人遇到过这个?

(侧节点:我讨厌IE。就是这样)。

0 个答案:

没有答案