Selenium WebDriver错误? ChromeDriver设置值时不关注字段?

时间:2014-04-14 17:35:41

标签: java selenium selenium-webdriver selenium-chromedriver

我今天一直在努力解决这个问题;

我有一个输入字段,其中包含一些显示“提示”的自定义JavaScript。当字段的值为空并且用户没有点击该字段(即聚焦在该字段上)时的文本片段。否则就会消失。

从几天前开始,以下代码在输入字段中使用了这个提示JS:

WebDriver driver = chromeDriver;
WebElement fieldWithHint = driver.findElement(By.id("myField"));

fieldWithHint.sendKeys(newValue);

今天它不起作用(因为我已经重新启动了我的机器) - 提示JS非常困惑并且在输入文本时,移动到下一个字段,然后将文本显示为提示。

我刚刚发现以下内容仍有效:

WebDriverBackedSelenium driverWrapper = new WebDriverBackedSelenium(chromeDriver, "http://localhost/");
WebElement fieldWithHint = chromeDriver.findElement(By.id("myField"));

driverWrapper.type(fieldWithHint.getAttribute("name"), newValue);

我使用的是WebDriver for Java(版本0.9.7376),最新的ChromeDriver(2.9)和Chrome版本34.0.1847.116 m。

我想知道重新启动计算机并重新启动Chrome是否已更新并导致此问题。

有没有人见过这个?这是一个众所周知的问题吗?

我试过先点击该字段无济于事。

1 个答案:

答案 0 :(得分:1)

自升级到v34以来,我刚刚遇到了相关问题。

我有一个输入字段页面,每个字段链接到一个onblur事件,我通过输入中的选项卡触发。

升级之前,这个工作正常,现在从最后一个字段中跳出来,不会触发事件。

手动选项卡将焦点转移到地址栏,其中selenium选项卡转到DOM中的第一个元素。我还没有对v33进行同样的调查,也没有提出缺陷。

我知道这与升级相关联,因为它在已自动更新的网格节点上失败但在我升级之前在本地很好

<强> *** *** EDIT

管理与Chromedriver(https://code.google.com/p/chromedriver/issues/detail?id=762

重现和成长

我的问题是,如果您发送:标签,这会导致焦点转移到地址栏,那么即使您与元素进行交互,焦点也不会重新应用于元素。