implementation our first webdriver script selenium webdriver tutorial 10
En los dos tutoriales anteriores, lo familiarizamos con la arquitectura básica y características de WebDriver y el infraestructura necesaria para comenzar con Selenium WebDriver . Suponiendo que todos hayan configurado el sistema con todas las utilidades y paquetes necesarios, avanzaremos más con la implementación de nuestro primer script de prueba de WebDriver.
Por lo tanto, avanzando con la consiguiente Tutorial de Selenium WebDriver , estaríamos creando un script WebDriver. También dispersaríamos la luz sobre los elementos básicos y de uso común. Comandos de WebDriver . También aprenderíamos sobre el localizar estrategias de elementos de la interfaz de usuario y su inclusión en los guiones de prueba. También estudiaríamos Get Commands en detalle.
Lo que vas a aprender:
- Creación de guiones
- Tutorial de código
- Ejecución de pruebas
- Localización de elementos web
- Tipos de localizadores y su sintaxis
- Conclusión
- Lectura recomendada
Creación de guiones
Para la creación de scripts, estaríamos usando el proyecto 'Learning_Selenium' creado en el tutorial anterior y 'gmail.com' como la aplicación bajo prueba (AUT).
Guión:
- Inicie el navegador y abra 'Gmail.com'.
- Verifique el título de la página e imprima el resultado de la verificación.
- Ingrese el nombre de usuario y la contraseña.
- Haga clic en el botón Iniciar sesión.
- Cierre el navegador web.
Paso 1: Cree una nueva clase de Java denominada 'Gmail_Login' en el proyecto 'Learning_Selenium'.
Paso 2: Copie y pegue el siguiente código en la clase 'Gmail_Login.java'.
|_+_|El código anterior es equivalente al escenario textual presentado anteriormente.
Tutorial de código
Declaraciones de importación:
|_+_|Antes de la secuencia de comandos real, necesitamos importar los paquetes anteriores:
importar org.openqa.selenium.WebDriver - Hace referencia a la interfaz WebDriver que se requiere para crear una instancia de un nuevo navegador web.
importar org.openqa.selenium.firefox.FirefoxDriver - Hace referencia a la clase FirefoxDriver que se requiere para crear una instancia de un controlador específico de Firefox en la instancia del navegador instanciada mediante la interfaz WebDriver.
importar org.openqa.selenium.WebElement - Referencias a la clase WebElement que se requiere para crear una instancia de un nuevo elemento web.
importar org.openqa.selenium.By – Referencias a la clase By en la que se llama a un tipo de localizador.
A medida que nuestro proyecto crezca, es evidente y lógico que tengamos que introducir varios otros paquetes para funcionalidades más complejas y distintas como manipulaciones de Excel, conectividad de bases de datos, registro, afirmaciones, etc.
con que puedo abrir un archivo eps
Creación de instancias de objetos
Controlador WebDriver = nuevo FirefoxDriver ();
Creamos una variable de referencia para la interfaz WebDriver y la instanciamos usando la clase FirefoxDriver. Se iniciará un perfil de Firefox predeterminado, lo que significa que no se cargarán extensiones ni complementos con la instancia de Firefox y que se ejecutará en modo seguro.
Iniciar el navegador web
driver.get (appUrl);
A obtener() se llama al método en la instancia de WebDriver para iniciar una nueva instancia de navegador web. La secuencia de caracteres de cadena pasada como parámetro al obtener() El método redirige la instancia del navegador web iniciada a la URL de la aplicación.
Maximizar la ventana del navegador
driver.manage (). window (). maximizar ();
los maximizar() El método se utiliza para maximizar la ventana del navegador poco después de que se redirige a la URL de la aplicación.
mejor convertidor de youtube a mp3 gratis en línea
Obtener el título de la página
driver.getTitle ();
los getTitle () El método se utiliza para buscar el título de la página web actual. Por lo tanto, el título obtenido se puede cargar en una variable de cadena.
Comparación entre valores esperados y reales:
|_+_|El código anterior utiliza las construcciones java de declaración condicional para comparar el valor real y el valor esperado. En función del resultado obtenido, se ejecutará la sentencia print.
Creación de instancias de WebElement
Nombre de usuario de WebElement = driver.findElement (By.id ('Correo electrónico'));
En la declaración anterior, creamos una instancia de la referencia de WebElement con la ayuda de “Driver.findElement (By.id (“ Correo electrónico ”))”. Por lo tanto, el nombre de usuario se puede usar para hacer referencia al cuadro de texto Correo electrónico en la interfaz de usuario cada vez que queremos realizar alguna acción en él.
Borrar comando
username.clear ();
El método / comando clear () se usa para borrar el valor presente en el cuadro de texto, si lo hay. También borra el valor de marcador de posición predeterminado.
comando sendKeys
username.sendKeys ('TestSelenium');
los sendKeys () El método / comando se usa para ingresar / escribir el valor especificado (entre paréntesis) en el cuadro de texto. Note que el sendKeys () se llama al método en el objeto WebElement que se instancia con la ayuda de la propiedad del elemento correspondiente al elemento de la interfaz de usuario.
El bloque de código anterior ingresa la cadena 'TestSelenium' dentro del cuadro de texto Correo electrónico en la aplicación Gmail.
sendKeys es uno de los comandos más utilizados en los scripts de WebDriver.
Haga clic en Comando
SignInButton.click();
Me gusta sendKeys (), haga clic en () es otro comando excesivamente usado para interactuar con los elementos web. Hacer clic() comando / método se utiliza para hacer clic en el elemento web presente en la página web.
El bloque de código anterior hace clic en el botón 'Iniciar sesión' presente en la aplicación Gmail.
Notas:
- A diferencia del método sendKeys (), los métodos click () nunca se pueden parametrizar.
- A veces, hacer clic en un elemento web puede cargar una página nueva por completo. Por lo tanto, para sostener tales casos, el método click () está codificado de manera que espere hasta que se cargue la página.
Cerrar el navegador web
driver.close ();
El close () se usa para cerrar la ventana del navegador actual.
Terminar el programa Java
System.exit (0);
El método Exit () termina el programa Java con fuerza. Por lo tanto, recuerde cerrar todas las instancias del navegador antes de finalizar el Programa Java.
Ejecución de pruebas
El script de prueba o simplemente el programa java se puede ejecutar de las siguientes formas:
#1. Debajo de la barra de menú de Eclipse, hay un ícono para ejecutar el script de prueba. Consulte la siguiente figura.
Tenga en cuenta que solo se ejecutará la clase seleccionada.
#2. Haga clic derecho en cualquier lugar dentro de la clase dentro del editor, seleccione la opción 'Ejecutar como' y haga clic en la 'Aplicación Java'.
#3. Otro atajo para ejecutar el script de prueba es: presione ctrl + F11.
Al final del ciclo de ejecución, la declaración de impresión 'El script de prueba se ejecutó correctamente'. se puede encontrar en la consola.
Localización de elementos web
Los elementos web en WebDriver se pueden ubicar e inspeccionar de la misma manera que lo hicimos en los tutoriales anteriores de Selenium IDE. Selenium IDE y Firebug se pueden utilizar para inspeccionar el elemento web en la GUI. Se recomienda encarecidamente utilizar Selenium IDE para encontrar los elementos web. Una vez que el elemento web se encuentra correctamente, copie y pegue el valor de destino dentro del código de WebDriver. Los tipos de localizadores y las estrategias de localización son prácticamente los mismos excepto por la sintaxis y su aplicación.
En WebDriver, los elementos web se ubican con la ayuda de los buscadores dinámicos (findElement (By.locatorType (“valor del localizador”))).
Código de muestra:
driver.findElement (By.id ('Correo electrónico'));
Tipos de localizadores y su sintaxis
Tipo de localizador | Sintaxis | Descripción |
---|---|---|
cssSelector | driver.findElement (Por.cssSelector ('Selector de CSS')) | Localizar por valor de el selector de CSS |
identificación | driver.findElement (By.id ('ID_of_Element')) | Localizar por valor de el atributo 'id' |
nombre de la clase | driver.findElement (By.className ('Clase_de_elemento')) | Localizar por valor de el atributo 'clase' |
Texto del enlace | driver.findElement (By.linkText ('Texto')) | Localizar por valor del texto del hipervínculo |
parcialLinkText | driver.findElement (Por.partialLinkText ('Texto parcial')) | Localizar por valor del subtexto del hipervínculo |
nombre | driver.findElement (By.name ('Nombre_de_Elemento')) | Localizar por valor del Atributo 'nombre' |
xpath | driver.findElement (Por.xpath ('XPath')) | Localizar por valor del xpath |
tagName | driver.findElement (By.tagName ('entrada')) | Localizar por valor de su nombre de etiqueta |
Conclusión
En este tutorial, desarrollamos un script de automatización usando WebDriver y Java. También discutimos los diversos componentes que constituyen un script de WebDriver.
cual es el mejor optimizador de pc
Aquí están los puntos cruciales de este tutorial de Selenium WebDriver:
- Antes de la secuencia de comandos real, necesitamos importar algunos paquetes para poder crear una secuencia de comandos de WebDriver.
- importar openqa.selenium.By;
- importar openqa.selenium.WebDriver;
- importar openqa.selenium.WebElement;
- importar openqa.selenium.firefox.FirefoxDriver;
- A obtener() método utilizado para iniciar una nueva instancia de navegador web. La secuencia de caracteres pasada como parámetro en el método get () redirige la instancia del navegador web iniciada a la URL de la aplicación.
- los maximizar() El método se utiliza para maximizar la ventana del navegador.
- los claro() El método se utiliza para borrar el valor presente en el cuadro de texto, si lo hay.
- los sendKeys () El método se usa para ingresar el valor especificado en el cuadro de texto.
- Hacer clic() El método se utiliza para hacer clic en el elemento web presente en la página web.
- En WebDriver, los elementos web se pueden localizar mediante buscadores dinámicos.
- Los siguientes son los tipos de localizadores disponibles:
- identificación
- nombre de la clase
- nombre
- xpath
- cssSelector
- Texto del enlace
- parcialLinkText
- tagName
Continuando, en el siguiente tutorial, cambiaríamos nuestro enfoque hacia un marco que ayude a las pruebas de automatización conocido como TestNG. Tendríamos un estudio detallado sobre los diversos tipos de anotaciones proporcionadas por el marco.
Siguiente tutorial # 11 : Antes de profundizar en Frameworks, veremos detalles sobre JUnit, una herramienta de prueba de unidades de código abierto. La mayoría de los programadores usan JUnit ya que es fácil y no requiere mucho esfuerzo para probarlo. Este tutorial le dará una idea de JUnit y su uso en el script de selenium.
Un comentario para los lectores: Mientras nuestro próximo tutorial de la serie Selenium está en el modo de procesamiento, los lectores pueden comenzar a crear sus propios scripts básicos de WebDriver. Para scripts y conceptos más avanzados, tendremos varios otros tutoriales de Selenium WebDriver en esta serie.
Háganos saber en los comentarios si tiene algún problema para crear o ejecutar los scripts de WebDriver.
Lectura recomendada
- Introducción a Selenium WebDriver - Tutorial de Selenium n. ° 8
- Tutorial de Cucumber Selenium: Integración de Cucumber Java Selenium WebDriver
- Configuración e instalación completa de WebDriver con Eclipse - Tutorial de Selenium n. ° 9
- Verifique la visibilidad de los elementos web usando varios tipos de comandos de WebDriver - Tutorial de Selenium n. ° 14
- Scripts eficientes de Selenium y escenarios de resolución de problemas - Tutorial de Selenium n. ° 27
- Cómo manejar alertas / ventanas emergentes en Selenium WebDriver - Tutorial de Selenium n. ° 16
- Depuración de scripts de Selenium con registros (Tutorial de Log4j) - Tutorial de Selenium n. ° 26
- Introducción a JUnit Framework y su uso en Selenium Script - Tutorial de Selenium n. ° 11