SendKeys en Selenium WebDriver
Cuando trabajamos con el control de la prueba de automatización a través de frascos de selenio, no solo somos capaces de recuperar los datos de los elementos web, sino también capaces de enviar los datos a los elementos web. SendKeys () es el método en Selenium para enviar los datos como int, char y símbolos al campo de entrada. Los elementos actuales en la página web que se utilizan para identificar los elementos para recibir los datos se denominan localizadores como ID de elemento, nombre, nombre de clase, etc. Los Selenium WebDrivers se utilizan para interactuar entre las bibliotecas de Selenium y los navegadores.
Hay dos pasos sencillos en el método sendKeys () para enviar los datos al navegador:
Cómo pasar el método Selenium SendKeys al formulario
En este tutorial, utilizamos el formulario de inicio de sesión del sitio web "SwagLabs". Use el método sendkeys () para pasar el valor a los campos de entrada "nombre de usuario" y "contraseña" y haga clic automáticamente en el botón de inicio de sesión.
Discutamos el proceso paso a paso para ejecutar el código para el formulario de inicio de sesión.
Paso 1: Sitio web que se utilizará
Considere, para ilustración, una página de cuenta de usuario de inicio de sesión ubicada en https: // www.Saucedemo.com/.
En la cifra anterior se muestra un formulario de inicio de sesión con los campos "Nombre de usuario" y "Contraseña".
Ahora, el WebDriver debe reconocerlos para que complete automáticamente los datos en ambos campos. Como se discutió anteriormente, los localizadores también se pueden usar para esto. Una vez que localizamos las piezas necesarias, todo lo que queda por hacer es usar el método sendkeys () para suministrar explícitamente los valores necesarios.
Paso 2: Configurar el webdivermanager
WebDrivermanager funciona como una API en Selenium. Eso permite automatizar la gestión de la compatibilidad de las diversas versiones de Selenium WebDrivers, como ChromedRiver, GetKodriver y Firefox. Ahorra el tiempo al no descargar y agregar las bibliotecas de la última versión de WebDrivers.
Se debe utilizar el siguiente script para configurar el webDrivermanager:
Webdrivermanager.cromedriver ().configuración();Paso 3: crear una clase pública vacía
En este paso, comenzamos a escribir el código real. Creemos la clase vacía y pasemos el método sendKeys ().
El siguiente script se usa para crear el nombre de la clase SendKey:
clase pública sendkeyPaso 4: Configurar el webdriver
WebDrivers permite que la interacción entre selenio y navegador realice la prueba de automatización web ayudando a enviar y recibir los datos.
En este paso, configuramos el controlador del navegador Chrome a través del siguiente script:
Webdrivermanager.cromedriver ().configuración();Paso 5: use get () para abrir la página web
En este paso, usamos el método get () para abrir el sitio de URL dado en el navegador Chrome.
Use el siguiente método de script para hacerlo:
conductor.Get ("https: // www.Saucedemo.com/");Se puede ver en la siguiente figura que Chrome está controlado por el software de prueba automatizado.
Paso 6: Obtenga los campos de entrada
Para obtener los campos, necesitamos los localizadores como nombre, clase e ID. En este ejemplo, se utiliza la ID del localizador, lo que significa encontrar el campo de entrada por ID.
En la siguiente figura, el campo de entrada de nombre de usuario tiene id = nombre de usuario .
En la siguiente figura, el campo de entrada de contraseña tiene id = contraseña .
El método FindElement y por clase se utilizan para facilitar la búsqueda automática de las ID en el sitio web.
El siguiente script se usa para obtener los campos de entrada:
conductor.findelement (por.id ("nombre de usuario")).sendKeys ("Standard_user");De esta manera, puede especificar los elementos para obtener los campos de entrada.
Paso 7: Obtenga el botón de inicio de sesión xpath
Para obtener el campo de botón de inicio de sesión, necesitamos un localizador XPath.
Obtenga el XPath del botón siguiendo los pasos:
> Sitio> Inspeccionar> Haga clic derecho en el código del botón> Seleccione Copiar> Seleccione XPath completoEn este paso, el método FindElement y por clase se utilizan para facilitar automáticamente encontrar automáticamente el XPath en el sitio.
> FindElement (por.Xpath)El siguiente script se usa para obtener el XPath del inicio de sesión:
conductor.findelement (por.xpath ("/html/body/div/div/div [2]/div [1]/div [1]/div/form/input")).hacer clic();Paso 8: Cierre el navegador
En el paso final, cuando la cuenta de usuario se registre por el valor de valor automatizado de SendKeys, cierre el navegador utilizando el .Función Cerrar ().
Así es como puede usar el método Close ():
conductor.cerca();Consulte el siguiente código completo y vea la salida:
paquete ui;En el ejemplo de código anterior, usamos la ID del localizador para encontrar el "nombre de usuario" y la "contraseña" utilizando el by.clase localizada.
Después de ejecutar el código, los colocadores identifican automáticamente los campos de entrada y luego llena automáticamente los valores a esos campos pasando los valores clave a través de sendKeys ().
Después de recibir los valores en los campos de entrada, haga clic en el botón de inicio de sesión recuperando el XPath del botón de inicio de sesión. Finalmente, inicie sesión en el formulario con éxito. El navegador se cierra automáticamente después de que la cuenta de usuario se inicie.
Ahora, comprende cómo pasar el método Selenium SendKeys al formulario. Hablemos sobre una ilustración diferente donde demostramos cómo usar el método sendKeys () en el Selenium WebDriver para cargar un archivo.
Cómo cargar un archivo usando el método sendKeys ()
La técnica más simple para cargar un archivo utilizando Selenium WebDriver es el método SendKeys. Se requieren tres pasos simples para esto:
Paso 1: seleccione un botón de archivo
En el primer paso, necesitamos seleccionar el botón "Elija Archivo". Esto selecciona el archivo que desea cargar. El comando que selecciona un archivo se da en el siguiente:
Webelement uploadMyFile = controlador.findelement (por.id ("ChoosemyFile"));Aquí, puede ver que hemos tomado la identificación como "Choosemyfile" y esto es para el webelemento.
Paso 2: seleccione su archivo
Ahora, elija el archivo de su computadora que desea cargar. Dar la ubicación del archivo en nuestro sistema. El código para elegir el archivo para cargar se proporciona aquí:
cargandomyelement.sendkeys ("c: \\ myFile1.TXT");Paso 3: Sube tu archivo
Para cargar con éxito el archivo, ahora debe hacer clic en el botón de carga. Debe ejecutar el código en la línea posterior para lograr esto.
mi conductor.findelement (por.id ("cargarMyFile")).hacer clic();En el código anterior, puede ver que los módulos requeridos se cargan primero. Luego, creamos una clase en la que iniciamos el objeto del controlador. Esto lanza el navegador. Después de eso, seleccionamos el botón "Elegir archivo" y especificamos la ruta del archivo que queremos cargar. Por último, el archivo se carga correctamente cuando hacemos clic en el botón.
Conclusión
Esta guía del artículo ilustra el uso del método sendKeys () utilizando el marco de Selenium para pasar un nombre de usuario y contraseña al formulario de inicio de sesión a través de una herramienta de control automático. Usando el idioma Java, escribimos el código para configurar el controlador del navegador, iniciar el controlador del navegador y pasar las claves a través del localizador, como ID, XPath, e iniciar sesión en la cuenta. Al final, demostramos los resultados en el navegador que muestra que el sendkeys () pasa los valores del campo de entrada a través de IDS. Haga clic en el botón de inicio de sesión automáticamente. Finalmente, cierre el navegador. También explicamos cómo puede cargar un archivo específico usando el método sendkeys (). Este artículo contiene toda la información requerida para ayudarlo a comenzar.