# language: es # 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 Característica: Registro de usuario Como visitante de la plataforma Quiero poder crear una cuenta Para gestionar mis mascotas y reservar turnos # ============================================ # CAMINO FELIZ # ============================================ Escenario: Registro exitoso con datos validos Dado que estoy en la pagina de registro Cuando ingreso email "nuevo@ejemplo.com" Y ingreso contraseña "Password123" Y confirmo contraseña "Password123" Y acepto los terminos y condiciones Y hago click en "Crear cuenta" Entonces deberia ver mensaje "Te enviamos un email de verificacion" Y deberia recibir email de verificacion Escenario: Verificar email y activar cuenta Dado que me registre con email "nuevo@ejemplo.com" Y recibi el email de verificacion Cuando hago click en el link de verificacion Entonces mi cuenta deberia estar activa Y deberia ser redirigido al dashboard # ============================================ # VALIDACIONES # ============================================ Esquema del escenario: Registro con datos invalidos Dado que estoy en la pagina de registro Cuando ingreso email "" Y ingreso contraseña "" Y confirmo contraseña "" Y hago click en "Crear cuenta" Entonces deberia ver error "" Ejemplos: | 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 | Escenario: Registro con email ya existente Dado que existe un usuario con email "existente@ejemplo.com" Y estoy en la pagina de registro Cuando ingreso email "existente@ejemplo.com" Y completo el resto del formulario correctamente Y hago click en "Crear cuenta" Entonces deberia ver error "Este email ya esta registrado" Y deberia ver link "Recuperar contraseña" # ============================================ # CASOS ESPECIALES # ============================================ Escenario: Registro linkea con cuenta invitado existente # Usuario que reservo turno como invitado y ahora quiere registrarse Dado que existe un usuario invitado con email "invitado@ejemplo.com" Y ese usuario tiene una mascota "Luna" registrada Y estoy en la pagina de registro Cuando me registro con email "invitado@ejemplo.com" Y verifico mi cuenta Entonces deberia ver mi mascota "Luna" en el dashboard Y deberia ver mis turnos anteriores Escenario: Registro desde flujo de turnero # Usuario empezo a reservar turno y decide crear cuenta Dado que estoy en el paso final del turnero Y ingrese mis datos de contacto Cuando hago click en "Crear cuenta para guardar mis datos" Entonces deberia ver formulario simplificado Y mi email ya deberia estar pre-llenado Y solo deberia ingresar contraseña Escenario: Reenviar email de verificacion Dado que me registre pero no verifique mi cuenta Y estoy en la pagina de login Cuando intento iniciar sesion Entonces deberia ver "Tu cuenta no esta verificada" Y deberia ver boton "Reenviar email" Cuando hago click en "Reenviar email" Entonces deberia recibir nuevo email de verificacion