Selenium es una herramienta de prueba de código abierto, automatizada y valiosa que todos los desarrolladores de aplicaciones web deben conocer bien. Una prueba realizada con selenio generalmente se conoce como prueba de automatización de selenio. Sin embargo, Selenium no es solo una sola herramienta, sino una colección de herramientas, cada una de las cuales satisface diferentes necesidades de pruebas de automatización de Selenium. En este tutorial aprenderá todo sobre el Selenio y los diversos tipos de herramientas de prueba de automatización de Selenio.
Introducción a las pruebas de automatización de Selenio
Pero antes de explorar este tutorial de pruebas de automatización de Selenio, abordemos primero la necesidad de pruebas de automatización de Selenio y cómo el Selenio entró en escena en primer lugar.
Las pruebas manuales, una parte vital del proceso de desarrollo de aplicaciones, desafortunadamente, tienen muchas deficiencias, la principal de ellas es que el proceso es monótono y repetitivo. Para superar estos obstáculos, Jason Huggins, ingeniero de Thoughtworks, decidió automatizar el proceso de pruebas. Desarrolló un programa JavaScript llamado JavaScriptTestRunner que automatizaba las pruebas de aplicaciones web. Este programa fue renombrado Selenio en 2004.
Al completar este tutorial, debe dominar conceptos importantes de pruebas de automatización de Selenio, como TestNG, Selenium IDE, Selenium Grid, Selenium WebDriver con Curso de capacitación de Certificación de Selenio.
Una desventaja de las pruebas de automatización de Selenium es que solo funciona para aplicaciones web, lo que deja las aplicaciones de escritorio y móviles en el frío. Sin embargo, herramientas como Appium y QTP de HP, entre otras, se pueden usar para probar software y aplicaciones móviles.
Destáquese De Sus Compañeros en esta Temporada De Evaluación
Comience A Aprender Con Nuestros Cursos GRATUITOS Inscríbase Ahora
Herramientas de Prueba de Automatización de Selenio
El selenio consiste en un conjunto de herramientas que facilitan el proceso de prueba.
Fig: Selenium suite
Selenium IDE
La siguiente sección del tutorial de Pruebas de automatización de Selenium cubre todo lo que necesita saber sobre Selenium IDE. Shinya Kasatani desarrolló el Entorno de Desarrollo Integrado de Selenio (IDE) en 2006. Convencionalmente, es una interfaz fácil de usar que registra las interacciones del usuario para crear scripts de prueba automatizados. Es un plugin para Firefox o Chrome, generalmente utilizado como herramienta de creación de prototipos. Se desarrolló principalmente para acelerar la creación de scripts de automatización.
IDE dejó de existir en agosto de 2017, cuando Firefox se actualizó a la nueva versión de Firefox 55, que ya no era compatible con Selenium IDE. Applitools reescribió el antiguo IDE de Selenio y lanzó una nueva versión recientemente. La última versión vino con varios avances, como:
- Reutilización de scripts de prueba
- Depuración de scripts de prueba
- Selenium side runner
- Provisión para instrucciones de flujo de control
- Funcionalidad de localizador mejorada
Ahora echemos un vistazo más de cerca y con más detalle al Selenio IDE.
Instalación del IDE:
Paso 1-Abra el navegador Firefox
Paso 2-Haga clic en el menú en la esquina superior derecha
Paso 3-Haga clic en Complementos en el cuadro desplegable.
Paso 4-Haga clic en Buscar más complementos y escriba «Selenium IDE»
Paso 5-Haga clic en Agregar a Firefox
Una vez instalado, el icono Selenium IDE aparece en la esquina superior derecha del navegador. Una vez que haga clic en él, aparecerá un mensaje de bienvenida.
Grabación de una prueba
En esta sección del tutorial de pruebas de automatización de Selenium, aprenderemos a grabar una prueba. Primero vamos a crear una nueva prueba para un nuevo proyecto. Proporcione un nombre para su proyecto, en este ejemplo, lo llamaremos demo_project. Antes de grabar, debemos especificar una URL válida. La grabación comienza una vez que el navegador navega a esta URL. Vamos a navegar a la página de inicio de sesión de Facebook.
Al hacer clic en «Iniciar grabación», se le enviará a la página de Facebook y comenzará a grabar las interacciones del usuario. El usuario tiene la libertad de detener la grabación. Todas las acciones del usuario se graban y se convierten en un script.
Guarde su trabajo
A continuación, aprenderemos cómo guardar su trabajo en este tutorial de Pruebas de automatización de Selenio. Para guardar todo lo que acabas de hacer en el IDE, haz clic en el icono guardar en la esquina superior derecha del IDE. Le pedirá un nombre y una ubicación de dónde guardar el proyecto. El resultado es un único archivo con una extensión. side.
Reproducción
En el navegador: Puede reproducir pruebas en el IDE de pruebas de automatización de Selenium seleccionando la prueba que desea reproducir y haciendo clic en el botón Reproducir.
Para la reproducción entre navegadores, puede utilizar el runner de línea de comandos.
Control remoto de Selenio (RC)
Otro tema interesante que cubre este tutorial de pruebas de automatización de Selenio es Control Remoto o RC. También cubre la razón por la que RC nació en primer lugar. Paul Hammant desarrolló el Control Remoto de Selenio.
Inicialmente, Selenium-Core se llamaba «JavaScriptTestRunner», una herramienta construida por Jason Huggins en 2004. Era un conjunto de funciones de JavaScript que interpretaban y ejecutaban comandos Selenese utilizando el intérprete de JavaScript integrado en el navegador. Luego se inyectó Selenium-Core en el navegador web.
Ahora, consideremos una prueba de JavaScript.js utilizado por google.com. Este programa puede acceder a páginas como google.com/mail o google.com/login dentro de la google.com dominio.
Fig: Selenium RC
Sin embargo, el programa no puede acceder a elementos de otros dominios como Yahoo.com Las copias. Local de Selenium-Core y el navegador web tenían que instalarse para que pertenecieran al mismo dominio. Esto se llama la misma Política de Origen, y Selenium RC se introdujo para abordar esta limitación. El servidor actúa como un proxy HTTP configurado por el cliente y «engaña» al navegador para que crea que Selenium Core y la aplicación web que se está probando comparten el mismo origen.
Por lo tanto, Selenium RC es un servidor escrito en Java que permite escribir pruebas de aplicaciones en varios lenguajes de programación como Java, C#, Perl, PHP, Python, etc. El servidor RC acepta comandos del programa de usuario y los pasa al navegador como comandos JavaScript de Selenium-Core.
Selenium WebDriver
La siguiente sección del tutorial de Pruebas de automatización de Selenium cubre todo lo relacionado con Selenium WebDriver. Desarrollado por Simon Stewart en 2006, Selenium WebDriver fue el primer framework de pruebas multiplataforma que podía configurar y controlar los navegadores a nivel del sistema operativo. Sirvió como interfaz de programación para crear y ejecutar casos de prueba.
Fig: Selenium WebDriver
A diferencia de Selenium RC, WebDriver no requiere un motor central como RC e interactúa de forma nativa con las aplicaciones del navegador. WebDriver también soporta varios lenguajes de programación como Python, Ruby, PHP y Perl. También se puede integrar con marcos como TestNG y JUnit para la gestión de pruebas de automatización de Selenio.
La arquitectura de Selenium WebDriver es simple y fácil de entender:
Fig: Selenium WebDriver architecture
- Script de prueba de Selenium: El script de prueba de Selenium es el código de prueba escrito en cualquiera de los lenguajes de programación mencionados que interpreta el controlador.
- Protocolo de cable JSON: el Protocolo de cable JSON proporciona un mecanismo de transporte para transferir datos entre un servidor y un cliente. El protocolo de cable JSON sirve como un estándar de la industria para varios servicios web.
- Controladores de navegador: Selenium utiliza controladores específicos de cada navegador para establecer una conexión segura con el navegador.
- Navegadores: Selenium WebDriver admite varios navegadores web en los que probar y ejecutar aplicaciones.
Tutorial de Selenium WebDriver –
- Descargar e instalar Java 8 o una versión superior: Instale la versión más reciente del kit de desarrollo de Java. Haga clic aquí para instalarlo.
- Descargue y configure Eclipse o cualquier IDE Java de su elección: Abra el enlace URL.
Desplácese por la página y haga clic en la última versión en la sección «más descargas».
El archivo descargado será un archivo zip. Descomprima el archivo en una carpeta de su elección. Una vez desabrochado, abra el .archivo eclipse exe.
El siguiente paso es configurar un espacio de trabajo. Seleccione un directorio en el que desee almacenar todos sus proyectos y haga clic en el icono iniciar.
Una vez lanzado, el banco de trabajo IDE se ve algo como esto.
3. Descargar Cliente Java de Selenium WebDriver-
- Vaya a la página oficial de Selenio.
- Desplácese hacia abajo por la página web y localice los enlaces de idioma de Selenium Client y WebDriver.
- Haga clic en el enlace» Descargar » del controlador de cliente Java, como se muestra en la imagen.
Una vez descargado, descomprima el archivo en un directorio. Consiste en los archivos Jar necesarios para configurar Selenium WebDriver en el IDE.
4. Descargue el controlador del navegador: Los scripts de automatización deben ser compatibles con cualquier navegador. Cada navegador compatible con Selenium viene con sus archivos de controlador. Estos son esenciales para ejecutar los scripts. En el futuro, descargue el archivo de controlador más reciente desde este enlace.
5. Configurar Selenium WebDriver: El paso final es configurar el Selenium WebDriver con el IDE de Eclipse. En términos simples, creamos un nuevo proyecto Java para construir nuestro script de prueba.
Proporcione un nombre de proyecto y seleccione el JRE que desea utilizar. Es recomendable utilizar el JRE predeterminado. Selecciónelo y haga clic en Finalizar.
El siguiente y más importante paso es agregar los archivos ejecutables Java descargados . Para ello, haga clic derecho en el Proyecto>>Build Path>>Configure Build Path.
Seleccione bibliotecas y, a continuación, Agregue frascos externos.
Abra las carpetas en las que ha guardado los archivos JAR y seleccione los dos archivos JAR ejecutables. Haga clic en abrir para agregarlos.
Haga clic en la carpeta libs> > Seleccione los archivos> > Abrir
Una vez que haya terminado de agregar los archivos de la biblioteca, haga clic en Aplicar y Cerrar.
Con esto, ha configurado correctamente el Webdriver con el IDE de Eclipse. Ahora puede seguir adelante y crear su primer script de prueba.
Para hacer eso, haga clic con el botón derecho en la carpeta Src> > Nueva > > Clase
Ahora vamos a crear un script de prueba simple que inicie el navegador Firefox y abra la página de inicio de Facebook. El guion se proporciona a continuación.
Nota: El segundo argumento del método setProperty es la ubicación del controlador de su navegador. En nuestro caso, hemos instalado el controlador de gecko. Por lo tanto, pegamos la ruta junto con el nombre del archivo.
Haga clic en Ejecutar>>Ejecutar Como>>Aplicación Java
Selenium Grid
En la siguiente sección de este tutorial de pruebas de automatización de Selenium, aprenderá todo sobre Selenium Grid, que fue desarrollado por Patrick Lightbody para minimizar tiempo de pruebas de automatización de Selenio. Selenium Grid permite la ejecución en paralelo de pruebas en diferentes navegadores y sistemas operativos, facilitando la ejecución en paralelo. Grid es excepcionalmente flexible y está integrado con otros componentes de la suite para un rendimiento simultáneo.
Fig: Rejilla de Selenio
La rejilla consiste en un concentrador conectado a varios nodos. Recibe la prueba que se ejecutará junto con información sobre el sistema operativo y el navegador en el que se ejecutará. A continuación, la cuadrícula selecciona un nodo que se ajusta a los requisitos (navegador y plataforma) y pasa la prueba a ese nodo. El nodo ahora ejecuta el navegador y ejecuta los comandos de Selenium dentro de él.
Conclusión
Con suerte, este tutorial de Pruebas de automatización de Selenio le ha ayudado a obtener información sobre el Selenio y su funcionamiento. Aprenda cómo se puede usar selenium con python en este tutorial.