Selenium WebDriver:我想使用 Java 覆盖字段中的值

Selenium WebDriver: I want to overwrite value in field using Java

使用 Selenium WebDriver,我想 select 输入字段中的文本并将其替换为其他内容。

我有这个代码。

public void renameAGroup(String groupname){
        renameGroupbutton.click();
        renametGroupInput.sendKeys(Keys.chord(Keys.CONTROL, "a"),groupname);
        save.click();
}

当我运行上面的代码时,它会清除输入字段并输入新的组名,然后恢复旧的组名并保存。

为什么新值会被旧值覆盖?

尝试使用 javascript

删除值属性

JavascriptExecutor executor = (JavascriptExecutor) driver;

executor.executeScript("document.getElementById('elementid').value = '';");

告诉我这是否有效

UI 中存在缺陷,这就是我的测试失败的原因。 一旦修复了缺陷,我就可以使用了:

public void renameAGroup(String name) {
        renameGroupButton.click();
        renametGroupInput.clear();
        renametGroupInput.sendKeys(name);
        save.click();
    }