Saltar al contenido
Ruta de Aprendizaje

Ruta: Java Selenium

Domina Selenium con Java: desde el primer script hasta un framework de testing profesional con CI/CD.

Contenido8 secciones

Introducción a Java Selenium

Java + Selenium es la combinación más demandada en testing enterprise. Java da robustez y ecosistema; Selenium da capacidad de automatizar cualquier navegador.

Esta ruta te lleva desde tu primer script hasta un framework completo con Page Object Model, TestNG, reportes y CI/CD. No es el camino más corto, pero es el que más puertas abre en el mercado laboral español y europeo.

Fundamentos de Java

Variables, tipos de datos, estructuras de control, arrays, clases, objetos, herencia, polimorfismo, interfaces, excepciones y manejo de archivos.

Practica con ejercicios de HackerRank o Exercism enfocados a automatización. No necesitas ser experto en Spring o microservicios, pero sí escribir código limpio, reutilizable y bien estructurado.

Selenium WebDriver

Configura WebDriver con ChromeDriver. Aprende localizadores: id, name, class, tag, XPath y CSS selectors. Maneja formularios, dropdowns, checkboxes, alerts, iframes y ventanas múltiples.

Implementa esperas explícitas (WebDriverWait) en lugar de sleeps. Usa ExpectedConditions para esperar elementos visibles, clicables o con texto específico. Esto elimina la inestabilidad de los tests.

TestNG vs JUnit

TestNG es el estándar en testing enterprise por su potencia: paralelismo, dependencias entre tests, data providers, listeners y reportes integrados.

Configura un proyecto Maven con TestNG + Selenium. Aprende annotations (@Test, @BeforeMethod, @DataProvider). Usa data providers para ejecutar el mismo test con múltiples sets de datos. Esto reduce drásticamente la duplicación de código.

Frameworks de automatización

No reinventes la rueda. Frameworks como Serenity BDD o Selenide encapsulan patrones comunes y dan reportes profesionales sin esfuerzo.

Comienza con Selenide por su API simplificada y manejo automático de waits. Si el proyecto crece, evalúa Serenity para reportes detallados y documentación viva. Lo importante es que tu framework sea mantenible, no que uses el último hype.

Buenas prácticas

Page Object Model obligatorio. Separación clara entre capa de page objects, capa de tests y utilidades. Uso de constants para localizadores y timeouts.

Datos de prueba externalizados (properties, JSON o bases de datos de test). Screenshots automáticos en fallo. Logging estructurado. Suites ejecutables tanto local como en CI. Un buen framework se mide por cuánto tiempo puedes dejarlo sin tocarlo y sigue funcionando.

CI/CD integration

Configura GitHub Actions o GitLab CI para ejecutar tu suite en cada push. Usa Docker para garantizar el mismo entorno en local y CI.

Configura headless mode para ejecutar Chrome sin interfaz gráfica. Genera reportes HTML y allure. Notifica fallos por email o Slack. Un pipeline verde que falla cuando hay bugs es la mejor carta de presentación que puedes tener.

Recursos relacionados

Proyecto real

Automatiza una aplicación web real: puede ser una demo pública o un proyecto propio.

Incluye tests funcionales de UI y API, Page Objects organizados, TestNG con DataProviders, reportes HTML, y CI/CD con GitHub Actions. Documenta todo en el README. Ese proyecto es tu mejor CV.

Recursos relacionados