Estoy buscando una forma rápida de escribir y la tecla Intro o Retorno en Selenium. Desafortunadamente, el formulario que estoy tratando de probar (no es mi propio código, así que no puedo modificarlo) no tiene un botón Enviar. Cuando trabajo con él manualmente, simplemente escribo ENTERo RETURN. Necesito saber cómo hacer eso con el type
comando Selenium ya que no hay ningún botón para hacer clic.
selenium
automation
automated-tests
keypress
enter
croixhaug
fuente
fuente
Respuestas:
la
import
declaración es para Java, para otros lenguajes tal vez sea diferente, por ejemplo, python:from selenium.webdriver.common.keys import Keys
fuente
from selenium.webdriver.common.keys import Keys
( stackoverflow.com/questions/5503489/… )org.openqa.selenium.Keys
RETURN = '\ue006'
ENTER = '\ue007'
. ¿Pero por qué? Algunas reliquias o diferencias del sistema operativo.JAVA
O,
PITÓN
O,
O,
RUBÍ
O,
O,
C#
O,
fuente
Ahora que se lanzó Selenium 2, es un poco más fácil enviar una tecla Enter, ya que puede hacerlo con el
send_keys
método de laselenium.webdriver.remote.webelement.WebElement
clase (este código de ejemplo está en Python, pero el mismo método existe en Java):fuente
Puede utilizar
Keys.ENTER
oKeys.RETURN
. A continuación se muestran algunos detalles:Uso:
Java :
Usando
Keys.ENTER
:Utilizando
Keys.RETURN
Pitón:
Usando
Keys.ENTER
:Utilizando
Keys.RETURN
Keys.ENTER
yKeys.RETURN
ambos son deorg.openqa.selenium.Keys
, que se extiendejava.lang.Enum<Keys>
e implementajava.lang.CharSequence
Claves de enumeración
Enum Keys son las representaciones de teclas pulsables que no son texto. Estos se almacenan en los puntos de código Unicode PUA ( Área de uso privado ), 0xE000-0xF8FF.
Códigos clave:
Los especiales
keys codes
para ellos son los siguientes:u'\ue006'
u'\ue007'
La implementación de todos
Enum Keys
se maneja de la misma manera.Por lo tanto, estos son No
Functional
oOperational
diferencia al trabajar consendKeys(Keys.ENTER);
oWebElement.sendKeys(Keys.RETURN);
mediante Selenium .Introduzca la clave y la clave de retorno
En los teclados de computadora, Enter(o Returnen Mac OSX) en la mayoría de los casos hace que una línea de comando, ventana o cuadro de diálogo opere con su función predeterminada. Por lo general, esto es para finalizar una "entrada" y comenzar el proceso deseado, y generalmente es una alternativa a presionar un botón Aceptar.
A Returnmenudo también se les conoce como Entery normalmente realizan funciones idénticas; sin embargo, en algunas aplicaciones particulares (principalmente el diseño de página) Returnfunciona específicamente como la tecla Retorno de carro de la que se origina. Por el contrario, Entercomúnmente se etiqueta con su nombre en texto sin formato en teclados de PC genéricos.
Referencias
fuente
En Python
Paso 1.
from selenium.webdriver.common.keys import Keys
Paso 2.
driver.find_element_by_name("").send_keys(Keys.ENTER)
Nota: tienes que escribir
Keys.ENTER
fuente
Al escribir pruebas HTML, la tecla ENTER está disponible como
${KEY_ENTER}
.Puede usarlo con
sendKeys
, aquí hay un ejemplo:fuente
Solo haz esto:
fuente
fuente
Para aquellas personas que usan WebDriverJS
Keys.RETURN
, se haría referencia aUn ejemplo más completo como referencia también podría ser útil:
fuente
driver.findElement(By.id("Value")).sendKeys(Keys.RETURN);
odriver.findElement(By.id("Value")).sendKeys(Keys.ENTER);
fuente
ENTRAR = u '\ ue007'
consulte la documentación de selenio 'Teclas especiales'
fuente
Solo me gusta señalar que necesitaba esto para mis pruebas de pepino y descubrí que si desea simular presionando la tecla enter / return, debe enviar el
:return
valor y no el:enter
valor (vea los valores descritos aquí )fuente
Para Selenium RC con Java:
Para Selenium WebDriver (también conocido como Selenium2) con java:
O,
Otra forma de presionar Enter en WebDriver usando la clase Actions:
fuente
Si está buscando "cómo presionar la tecla Intro desde el teclado en selenium webdriver (java)", el siguiente código definitivamente lo ayudará.
fuente
Puedes llamar
submit()
al objeto de elemento en el que ingresó su texto.Alternativamente, puede enviarle específicamente la tecla Intro como se muestra en este fragmento de Python:
fuente
Intente usar XPATH para buscar el elemento y luego, el siguiente código funciona:
fuente
Hay las siguientes formas de presionar teclas: C #:
O
O
fuente
funciona
fuente
Cuando no desee buscar ningún localizador, puede usar la clase Robot: por ejemplo:
fuente
Para ingresar claves usando selenio, primero debe importar la siguiente biblioteca:
luego agregue este código donde desea ingresar la clave
Puede reemplazar RETORNO con cualquier clave de la lista de acuerdo con sus requisitos
fuente
También se podría lograr utilizando la interfaz de acción, en el caso de WebDriver:
fuente
Para RUBY: -
fuente
Puedes probar :
fuente
Tuve que enviar la tecla Enter en medio de un mensaje de texto. Así que pasé el siguiente texto para enviar la función de teclas para lograr
1\n2\n3
fuente
Para Selenium WebDriver usando xpath (si la clave está visible):
o,
fuente
Si se encuentra en esta situación específica:
a) desea SÓLO presionar la tecla, pero no tiene un elemento web específico para hacer clic
b) está utilizando Selenium 2 (webDriver)
Entonces la solución es:
fuente
JAVA / JavaScript:
Probablemente también podría hacerlo de esta manera, de forma no nativa :
fuente
fuente
Para todos los que usan javascript / node , esto funcionó para mí:
fuente