WebDriverException元素必须是用户可编辑的才能清除它

时间:2015-02-25 05:40:21

标签: selenium webdriver selenium-chromedriver chrome-web-driver fluentlenium

我正在尝试运行测试用例以执行重置密码,我正面临这个问题。

WebDriverException元素必须是用户可编辑的才能清除它。

基本上我正在访问用于输入新密码的页面并执行此操作:

browser.$("#newPassword").text("password");

执行上述行会引发错误。

4 个答案:

答案 0 :(得分:24)

我有同样的问题,因为有另一个具有相同id的元素,它不是输入字段,因此无法清除。

答案 1 :(得分:1)

我们可以尝试以下方法:

WebElement.sendKeys(Keys.DELETE);
WebElement.sendKeys("Test");

答案 2 :(得分:1)

可能是对输入类型使用错误方法的情况。

至少在CodeCeption中,应在输入元素上使用fillField,在选择元素上使用selectOption,将它们混合将得到invalid element state: Element must be user-editable in order to clear it.

答案 3 :(得分:0)

我有一个Primefaces autoComplete元素的问题。 Primefaces 6.0使用您传递的ID呈现一个跨度,并在其中输入一个“_input”附加到ID的输入。如果您只是使用您在源代码中添加的ID,则告诉Selenium进入跨度(失败并显示“元素必须是用户可编辑的”错误)。如果您在selenium中按ID选择,请将“_input”添加到ID。