org openqa mac library bindings selenium automation selenium-rc

openqa - selenium os



cómo eliminar los valores predeterminados en el campo de texto con selenio? (8)

Quiero eliminar un valor predeterminado de un cuadro de texto para ingresar el nuevo valor, pero no entiendo cómo hacerlo.

Estaba pensando en usar CTRL + a y luego eliminar pero no estoy seguro de cómo hacerlo.

Incluso utilicé el comando de WebDriver driver.findElement("locator").clear(); .


¿Y fue útil el código? Porque el código que está escribiendo debe hacer lo siguiente:

driver.findElement("locator").clear();

Si no ayuda, intente esto:

WebElement toClear = driver.findElement("locator"); toClear.sendKeys(Keys.CONTROL + "a"); toClear.sendKeys(Keys.DELETE);

tal vez tengas que hacer alguna conversión de las Keys.CONTROL + "a" a CharSequence, pero el primer acercamiento debería hacer la magia


.clear () se puede utilizar para borrar el texto

(locator).clear();

el uso de borrar con el localizador elimina todo el valor en ese localizador exacto.


Esto me ha funcionado:

driver.findElement(yourElement).clear();

driver.findElement(yourelement).sendKeys("");


La siguiente función eliminará el carácter de entrada uno por uno hasta que el campo de entrada esté vacío usando PromiseWhile

driver.clearKeys = function(element, value){ return element.getAttribute(''value'').then(function(val) { if (val.length > 0) { return new Promise(function(resolve, reject) { var len; len = val.length; return promiseWhile(function() { return 0 < len; }, function() { return new Promise(function(resolve, reject) { len--; return element.sendKeys(webdriver.Key.BACK_SPACE).then(function() { return resolve(true); }); }); }).then(function() { return resolve(true); }); }); }


Para el modelo de objetos de página

@FindBy(xpath="//foo") public WebElement textBox;

ahora en tu función

public void clearExistingText(String newText){ textBox.clear(); textBox.sendKeys(newText); }

para la arquitectura general de selenio

driver.findElement(By.xpath("//yourxpath")).clear(); driver.findElement(By.xpath("//yourxpath")).sendKeys("newText");


Puedes usar el código a continuación. Selecciona el valor preexistente en el campo y lo sobrescribe con el nuevo valor.

driver.findElement(By.xpath("*enter your xpath here*")).sendKeys(Keys.chord(Keys.CONTROL, "a"),*enter the new value here*);


Si está buscando una solución de Selenium RC, puede usar simplemente

// assuming ''selenium'' is a healthy Selenium instance selenium.type("someLocator", "");


driver.findElement(locator).clear() - Este comando funcionará en todos los casos