128 lines
4.5 KiB
Gherkin
128 lines
4.5 KiB
Gherkin
# Fuente: album/book/ops-templates/veterinarian/03-realizar-visita.md
|
|
# Drive: 08. IT y Producto/Funcionalidades Plataforma Veterinario
|
|
# Tests Backend: pytest tests/contracts/mascotas/test_vet_visits.py
|
|
# Tests Frontend: npx playwright test vet-visit.spec.ts
|
|
|
|
Feature: Realizar visita y crear informe medico
|
|
|
|
Como veterinario
|
|
Quiero registrar la atencion medica de mis visitas
|
|
Para mantener el historial clinico del paciente
|
|
|
|
Background:
|
|
Given que estoy logueado como veterinario
|
|
And tengo una visita programada para hoy con mascota "Luna"
|
|
And la visita esta en estado "Pagado"
|
|
|
|
# ============================================
|
|
# INICIAR VISITA
|
|
# ============================================
|
|
|
|
Scenario: Ver informacion antes de la visita
|
|
When accedo al detalle de la visita
|
|
Then deberia ver la direccion para llegar
|
|
And deberia ver el telefono del dueno para confirmar
|
|
And deberia ver los servicios a realizar
|
|
And deberia ver el historial previo de Luna
|
|
|
|
Scenario: Iniciar visita al llegar
|
|
Given que llegue al domicilio
|
|
When hago click en "Iniciar visita"
|
|
Then el estado deberia cambiar a "En progreso"
|
|
And deberia registrarse la hora de inicio
|
|
And deberia habilitarse el boton "Crear informe"
|
|
|
|
# ============================================
|
|
# CREAR INFORME MEDICO
|
|
# ============================================
|
|
|
|
Scenario: Completar informe con examen fisico
|
|
Given que la visita esta en progreso
|
|
When voy a "Crear informe"
|
|
And completo el examen fisico:
|
|
| campo | valor |
|
|
| Peso | 4.5 kg |
|
|
| Temperatura | 38.5 °C |
|
|
| Frecuencia cardiaca | 120 lpm |
|
|
| Frecuencia resp | 25 rpm |
|
|
| Mucosas | Rosadas |
|
|
| Hidratacion | Normal |
|
|
And guardo el informe
|
|
Then el examen fisico deberia guardarse
|
|
|
|
Scenario: Agregar diagnostico y tratamiento
|
|
Given que complete el examen fisico
|
|
When agrego el diagnostico:
|
|
"""
|
|
Otitis externa bilateral leve.
|
|
Paciente presenta prurito y secrecion ceruminosa.
|
|
Sin signos de infeccion secundaria.
|
|
"""
|
|
And agrego el tratamiento:
|
|
"""
|
|
Limpieza de oidos con solucion fisiologica.
|
|
Aplicacion de gotas oticas antibioticas.
|
|
Control en 7 dias.
|
|
"""
|
|
And guardo el informe
|
|
Then el diagnostico y tratamiento deberian guardarse
|
|
|
|
Scenario: Recetar medicamentos
|
|
Given que estoy creando el informe
|
|
When agrego medicamentos:
|
|
| nombre | dosis | frecuencia | duracion |
|
|
| Otomax gotas | 5 gotas | cada 12 horas | 7 dias |
|
|
| Meloxicam 1.5mg | 1 comp | cada 24 horas | 3 dias |
|
|
And guardo el informe
|
|
Then los medicamentos deberian aparecer en el informe
|
|
And el dueno podra verlos desde su cuenta
|
|
|
|
# ============================================
|
|
# COMPLETAR VISITA
|
|
# ============================================
|
|
|
|
Scenario: Completar visita con informe
|
|
Given que el informe esta completo
|
|
When hago click en "Completar visita"
|
|
And confirmo la finalizacion
|
|
Then la visita deberia pasar a estado "Completado"
|
|
And deberia generarse factura electronica (AFIP)
|
|
And el dueno deberia recibir notificacion
|
|
And el informe deberia ser visible para el dueno
|
|
|
|
Scenario: No puedo completar sin informe
|
|
Given que la visita esta en progreso
|
|
But no cree ningun informe
|
|
When intento completar la visita
|
|
Then deberia ver error "Debes crear el informe antes de completar"
|
|
|
|
# ============================================
|
|
# GUARDADO AUTOMATICO
|
|
# ============================================
|
|
|
|
Rule: El informe se guarda automaticamente
|
|
|
|
Scenario: Guardado automatico cada 30 segundos
|
|
Given que estoy escribiendo el informe
|
|
When pasan 30 segundos
|
|
Then deberia ver indicador "Guardado automaticamente"
|
|
|
|
Scenario: Recuperar informe despues de desconexion
|
|
Given que estaba escribiendo el informe
|
|
And perdi conexion a internet
|
|
When recupero la conexion
|
|
Then deberia recuperar mi progreso
|
|
And no deberia perder lo que escribi
|
|
|
|
# ============================================
|
|
# CASOS ESPECIALES
|
|
# ============================================
|
|
|
|
Scenario: Cancelar visita in situ
|
|
Given que llegue al domicilio
|
|
But el dueno no esta
|
|
When marco la visita como "Cancelada in situ"
|
|
And selecciono motivo "Dueno ausente"
|
|
Then la visita deberia marcarse como cancelada
|
|
And deberia generarse cargo por visita fallida
|