Daily Scrum - 7 de Noviembre 2025 (Testing unitario)

🎯 Objetivo hoy

Crear pruebas unitarias completas para la herramienta de generación de tests.


✅ ¿Qué hice ayer?

  • Implementé la generación de tests completos con múltiples preguntas.
  • Aseguré coherencia y variedad entre preguntas del mismo test.
  • Validé manualmente 2 tests completos generados.

🚀 ¿Qué haré hoy?

  1. Crear suite de tests unitarios en backend/tests/test_test_generator.py:
    • Test de validación de modelos Pydantic (Question, Answer, MultipleChoiceTest).
    • Test de generación de pregunta única con estructura correcta.
    • Test de generación de test completo con N preguntas.
    • Test de validación de respuestas (exactamente una correcta por pregunta).
  2. Tests de casos límite:
    • Manejo de contexto vacío o insuficiente.
    • Generación con número inválido de preguntas (0, negativo, muy alto).
    • Temas demasiado amplios o demasiado específicos.
  3. Tests de calidad:
    • Verificar que no hay preguntas duplicadas en un test.
    • Validar que hay exactamente 4 opciones por pregunta.
    • Comprobar que la respuesta correcta está marcada apropiadamente.

🚧 Obstáculos potenciales

  • Los tests pueden necesitar mocks del LLM para ser deterministas.
  • Validar la “calidad” de preguntas/distractores es subjetivo y difícil de automatizar.
  • Los tests de integración con el grafo pueden requerir setup adicional.

✅ Criterios de aceptación

  • Suite de tests unitarios completa con cobertura >80%.
  • Todos los tests pasan correctamente (green).
  • Tests documentados con casos claros y aserciones específicas.
  • CI/CD ejecuta los tests automáticamente.

📝 Notas / Próximos pasos

  • Mañana: Implementar tests de integración y validar el flujo completo en el grafo.
  • Considerar añadir tests de rendimiento (tiempo de generación, uso de memoria).