92 lines
3.8 KiB
Gherkin
92 lines
3.8 KiB
Gherkin
# Fuente: album/book/ops-templates/pet-owner/01-registro.md
|
|
# Drive: 08. IT y Producto/Funcionalidades Plataforma Veterinario
|
|
# Tests Backend: pytest tests/contracts/common/test_users.py
|
|
# Tests Frontend: npx playwright test auth.spec.ts
|
|
|
|
Feature: Registro de usuario
|
|
|
|
Como visitante de la plataforma
|
|
Quiero poder crear una cuenta
|
|
Para gestionar mis mascotas y reservar turnos
|
|
|
|
# ============================================
|
|
# CAMINO FELIZ
|
|
# ============================================
|
|
|
|
Scenario: Registro exitoso con datos validos
|
|
Given que estoy en la pagina de registro
|
|
When ingreso email "nuevo@ejemplo.com"
|
|
And ingreso contraseña "Password123"
|
|
And confirmo contraseña "Password123"
|
|
And acepto los terminos y condiciones
|
|
And hago click en "Crear cuenta"
|
|
Then deberia ver mensaje "Te enviamos un email de verificacion"
|
|
And deberia recibir email de verificacion
|
|
|
|
Scenario: Verificar email y activar cuenta
|
|
Given que me registre con email "nuevo@ejemplo.com"
|
|
And recibi el email de verificacion
|
|
When hago click en el link de verificacion
|
|
Then mi cuenta deberia estar activa
|
|
And deberia ser redirigido al dashboard
|
|
|
|
# ============================================
|
|
# VALIDACIONES
|
|
# ============================================
|
|
|
|
Scenario Outline: Registro con datos invalidos
|
|
Given que estoy en la pagina de registro
|
|
When ingreso email "<email>"
|
|
And ingreso contraseña "<password>"
|
|
And confirmo contraseña "<confirmacion>"
|
|
And hago click en "Crear cuenta"
|
|
Then deberia ver error "<mensaje_error>"
|
|
|
|
Examples:
|
|
| email | password | confirmacion | mensaje_error |
|
|
| invalido | Password123 | Password123 | Email invalido |
|
|
| test@test.com | 123 | 123 | Contraseña muy corta |
|
|
| test@test.com | password | password | Debe contener al menos un numero |
|
|
| test@test.com | Password123 | Diferente123 | Las contraseñas no coinciden |
|
|
|
|
Scenario: Registro con email ya existente
|
|
Given que existe un usuario con email "existente@ejemplo.com"
|
|
And estoy en la pagina de registro
|
|
When ingreso email "existente@ejemplo.com"
|
|
And completo el resto del formulario correctamente
|
|
And hago click en "Crear cuenta"
|
|
Then deberia ver error "Este email ya esta registrado"
|
|
And deberia ver link "Recuperar contraseña"
|
|
|
|
# ============================================
|
|
# CASOS ESPECIALES
|
|
# ============================================
|
|
|
|
Scenario: Registro linkea con cuenta invitado existente
|
|
# Usuario que reservo turno como invitado y ahora quiere registrarse
|
|
Given que existe un usuario invitado con email "invitado@ejemplo.com"
|
|
And ese usuario tiene una mascota "Luna" registrada
|
|
And estoy en la pagina de registro
|
|
When me registro con email "invitado@ejemplo.com"
|
|
And verifico mi cuenta
|
|
Then deberia ver mi mascota "Luna" en el dashboard
|
|
And deberia ver mis turnos anteriores
|
|
|
|
Scenario: Registro desde flujo de turnero
|
|
# Usuario empezo a reservar turno y decide crear cuenta
|
|
Given que estoy en el paso final del turnero
|
|
And ingrese mis datos de contacto
|
|
When hago click en "Crear cuenta para guardar mis datos"
|
|
Then deberia ver formulario simplificado
|
|
And mi email ya deberia estar pre-llenado
|
|
And solo deberia ingresar contraseña
|
|
|
|
Scenario: Reenviar email de verificacion
|
|
Given que me registre pero no verifique mi cuenta
|
|
And estoy en la pagina de login
|
|
When intento iniciar sesion
|
|
Then deberia ver "Tu cuenta no esta verificada"
|
|
And deberia ver boton "Reenviar email"
|
|
When hago click en "Reenviar email"
|
|
Then deberia recibir nuevo email de verificacion
|