Este proyecto contiene un pipeline de Jenkins para probar el acceso al login del sitio web clasesprofesores.net/login.
El pipeline automatiza las pruebas de login con dos escenarios:
- Credenciales correctas: Verifica que el formulario de login acepta credenciales válidas
- Credenciales incorrectas: Verifica que el formulario de login rechaza credenciales inválidas
- Jenkinsfile: Definición del pipeline de Jenkins
- test_login.py: Script de prueba en Python usando Selenium
- requirements.txt: Dependencias de Python necesarias
- JENKINS_SETUP.md: Instrucciones detalladas de configuración de Jenkins
- DIAGNOSTICO_JENKINS.md: Diagnóstico de problemas comunes y salida esperada
- Python 3.6+
- Chrome/Chromium browser
- ChromeDriver
- Jenkins con soporte para pipelines
- Python 3 (versión 3.7 o superior) instalado en el agente de Jenkins
- pip3 instalado en el agente de Jenkins
- Google Chrome instalado en el agente de Jenkins
- ChromeDriver instalado en el agente de Jenkins (compatible con la versión de Chrome)
Nota: El pipeline instalará automáticamente las dependencias de Python (selenium, requests) durante la etapa de Setup. Ver JENKINS_SETUP.md para instrucciones detalladas de configuración.
- Instalar dependencias:
pip install -r requirements.txt- Ejecutar prueba con credenciales correctas:
python3 test_login.py --mode correct- Ejecutar prueba con credenciales incorrectas:
python3 test_login.py --mode incorrect- Crear un nuevo pipeline en Jenkins
- Configurar el pipeline para usar el repositorio
- Jenkins automáticamente detectará el Jenkinsfiley ejecutará el pipeline
Importante: El job debe estar configurado como Pipeline, no como Freestyle Project. Si solo ves operaciones de git en la salida y no mensajes de los tests, consulta DIAGNOSTICO_JENKINS.md para solucionar el problema.
Cuando los tests se ejecutan correctamente, deberías ver mensajes claros como:
- ✓ LOGIN SUCCESS - TEST PASSED(para credenciales correctas)
- ✓ LOGIN CORRECTLY REJECTED - TEST PASSED(para credenciales incorrectas)
- SCRIPT FINALIZADO EXITOSAMENTE
Si no ves estos mensajes, consulta DIAGNOSTICO_JENKINS.md para diagnóstico y solución.
El pipeline tiene las siguientes etapas:
- Setup: Configura el entorno de prueba e instala dependencias
- Test Login - Correct Credentials: Prueba el login con credenciales correctas
- Test Login - Incorrect Credentials: Prueba el login con credenciales incorrectas
- Report Results: Genera un resumen de los resultados
Las credenciales de prueba están definidas en test_login.py:
- Para credenciales correctas: Actualizar CORRECT_USERNAMEyCORRECT_PASSWORD
- Para credenciales incorrectas: Ya están configuradas con valores inválidos
Nota: En un entorno de producción, las credenciales deben almacenarse de forma segura usando Jenkins Credentials o variables de entorno.
- El script usa Selenium en modo headless (sin interfaz gráfica)
- El script intenta detectar automáticamente los campos del formulario usando múltiples selectores
- Los tiempos de espera pueden ajustarse según la velocidad de respuesta del sitio