En esta sección, aprenderás a escribir tu primer script de Selenium. Este es un paso crucial para comenzar a automatizar pruebas de aplicaciones web. Asegúrate de tener Selenium WebDriver instalado y tu entorno configurado antes de continuar.
Objetivos de Aprendizaje
- Comprender la estructura básica de un script de Selenium.
- Aprender a abrir un navegador y navegar a una página web.
- Realizar una simple verificación en la página web.
Estructura Básica de un Script de Selenium
Un script de Selenium generalmente sigue estos pasos:
- Importar las bibliotecas necesarias.
- Configurar el WebDriver.
- Abrir un navegador.
- Navegar a una URL específica.
- Realizar acciones en la página web.
- Cerrar el navegador.
Ejemplo de Script
A continuación, se presenta un ejemplo de un script básico de Selenium en Python. Este script abrirá el navegador, navegará a "https://www.example.com", verificará el título de la página y luego cerrará el navegador.
# Importar las bibliotecas necesarias from selenium import webdriver # Configurar el WebDriver driver = webdriver.Chrome(executable_path='ruta/al/chromedriver') try: # Abrir el navegador y navegar a la URL driver.get("https://www.example.com") # Obtener el título de la página titulo = driver.title # Verificar el título de la página assert "Example Domain" in titulo, "El título de la página no es el esperado." print("El título de la página es correcto.") finally: # Cerrar el navegador driver.quit()
Explicación del Código
- Importar las bibliotecas necesarias: Utilizamos
webdriver
de Selenium para controlar el navegador. - Configurar el WebDriver: Especificamos el controlador del navegador que queremos usar. En este caso,
Chrome
. Asegúrate de que elchromedriver
esté en la ruta especificada. - Abrir el navegador y navegar a la URL: Usamos
driver.get()
para abrir la página web deseada. - Obtener y verificar el título de la página: Utilizamos
driver.title
para obtener el título de la página yassert
para verificar que el título sea el esperado. - Cerrar el navegador: Finalmente, usamos
driver.quit()
para cerrar el navegador y liberar los recursos.
Ejercicio Práctico
Objetivo: Modifica el script anterior para que navegue a "https://www.wikipedia.org" y verifique que el título de la página contenga "Wikipedia".
Solución
# Importar las bibliotecas necesarias from selenium import webdriver # Configurar el WebDriver driver = webdriver.Chrome(executable_path='ruta/al/chromedriver') try: # Abrir el navegador y navegar a la URL driver.get("https://www.wikipedia.org") # Obtener el título de la página titulo = driver.title # Verificar el título de la página assert "Wikipedia" in titulo, "El título de la página no es el esperado." print("El título de la página es correcto.") finally: # Cerrar el navegador driver.quit()
Retroalimentación y Consejos
- Error Común: Asegúrate de que el
chromedriver
esté en la ruta correcta. Si recibes un error de "driver not found", verifica la ruta. - Consejo Adicional: Siempre utiliza
try
yfinally
para asegurarte de que el navegador se cierre incluso si ocurre un error durante la ejecución del script.
Conclusión
Has aprendido a escribir y ejecutar un script básico de Selenium. Este es el primer paso hacia la automatización de pruebas más complejas. En el próximo tema, profundizaremos en la interfaz de WebDriver y cómo interactuar con diferentes elementos de la página web.
Automatización de Pruebas con Selenium
Módulo 1: Introducción a la Automatización de Pruebas
- ¿Qué es la Automatización de Pruebas?
- Beneficios de la Automatización de Pruebas
- Visión General de Selenium
- Configuración de Tu Entorno
Módulo 2: Comenzando con Selenium
- Introducción a Selenium WebDriver
- Instalación de Selenium WebDriver
- Primer Script de Selenium
- Entendiendo la Interfaz WebDriver
Módulo 3: Localización de Elementos Web
- Introducción a los Localizadores
- Uso de Localizadores ID y Name
- XPath y Selectores CSS
- Estrategias Avanzadas de Localización
Módulo 4: Interacción con Elementos Web
- Realizando Acciones en Elementos Web
- Manejo de Desplegables y Casillas de Verificación
- Trabajando con Alertas y Ventanas Emergentes
- Gestión de Ventanas del Navegador y Marcos
Módulo 5: Sincronización en Selenium
Módulo 6: Marcos de Pruebas y Selenium
- Introducción a TestNG
- Configuración de TestNG con Selenium
- Creación de Casos de Prueba TestNG
- Pruebas Basadas en Datos con TestNG
Módulo 7: Conceptos Avanzados de Selenium
- Manejo de Llamadas AJAX
- Trabajando con Cookies
- Captura de Capturas de Pantalla
- Ejecución de JavaScript con Selenium
Módulo 8: Selenium Grid y Pruebas en Paralelo
- Introducción a Selenium Grid
- Configuración de Selenium Grid
- Ejecución de Pruebas en Paralelo
- Pruebas en Múltiples Navegadores
Módulo 9: Integración Continua y Selenium
- Introducción a la Integración Continua
- Integración de Selenium con Jenkins
- Automatización de la Ejecución de Pruebas
- Reportes y Registro