Pruebas Unitarias - IbenMG/GRUPO09-2025-PROYINF GitHub Wiki
Pruebas Unitarias · Sistema de Vigilancia Científica Agrícola
Prueba 1: Integración con fuentes de datos científicas
Contexto de Ejecución
El sistema debe estar conectado a internet y configurado con accesos válidos a APIs de fuentes agrícolas confiables.
Caso 1: Fuente válida (API activa)
Inputs
- URL:
https://api.fao.org/agriculture
- Token de autenticación válido
Salida Esperada
- Datos importados exitosamente
- Mensaje:
"Datos importados correctamente"
Caso 2: Fuente inválida (URL mal formada)
Inputs
- URL:
htp://api_invalida_fao
- Sin token
Salida Esperada
- Error de conexión
- Mensaje:
"Fuente de datos no válida"
Caso 3: Fuente con acceso restringido (sin autenticación)
Inputs
- URL:
https://api.privada.org/data
- Sin credenciales
Salida Esperada
- Acceso denegado
- Mensaje:
"Acceso denegado a la fuente de datos"
Caso 4: Fuente sin datos disponibles
Inputs
- URL:
https://api.vacia.org
- Token válido
Salida Esperada
- Importación sin datos
- Mensaje:
"No se encontraron datos disponibles"
Prueba 2: Clasificación de información por tema
Contexto de Ejecución
Sistema con artículos científicos almacenados en la base de datos.
Caso 1: Artículo sobre plagas
Inputs
- Título:
"Aumento de mosca blanca en cultivos de tomate"
- Contenido con términos como "plaga", "insecto", "daño"
Salida Esperada
- Clasificación:
"Plagas"
Caso 2: Artículo sobre clima
Inputs
- Título:
"Análisis de sequías prolongadas en el norte"
- Contenido con "clima", "precipitaciones", "sequía"
Salida Esperada
- Clasificación:
"Clima"
Caso 3: Artículo ambiguo
Inputs
- Título:
"Condiciones generales del campo"
- Contenido sin palabras clave claras
Salida Esperada
- Clasificación fallida
- Mensaje:
"No se pudo clasificar el contenido"
Caso 4: Artículo sobre enfermedades vegetales
Inputs
- Título:
"Impacto del mildiu en la papa"
- Contenido con "enfermedad", "hongo", "papa"
Salida Esperada
- Clasificación:
"Enfermedades"
Prueba 3: Generación de boletín web
Contexto de Ejecución
El usuario tiene acceso al editor y datos procesados disponibles.
Caso 1: Generación exitosa con datos completos
Inputs
- Plantilla seleccionada:
Clásica
- Datos: Resumen de clima y plagas
- Gráficos: Temperatura, población de insectos
Salida Esperada
- Vista previa generada correctamente
- Mensaje:
"Boletín generado exitosamente"
Caso 2: Generación con datos incompletos
Inputs
- Plantilla seleccionada:
Minimalista
- Datos: Solo texto, sin gráficos
Salida Esperada
- Boletín generado con advertencia
- Mensaje:
"Boletín generado, pero algunos elementos no se pudieron mostrar"
Caso 3: Error de formato en contenido HTML
Inputs
- Código HTML con errores dentro del editor
Salida Esperada
- Error en previsualización
- Mensaje:
"Error al procesar el contenido del boletín"
Caso 4: Generación con traducción automática
Inputs
- Idioma destino: Inglés
- Contenido original en español
Salida Esperada
- Boletín generado y traducido correctamente
- Mensaje:
"Traducción y generación completadas"
Prueba 4: Publicación y distribución del boletín
Contexto de Ejecución
El sistema debe tener configuraciones correctas de red, correo y redes sociales.
Caso 1: Publicación exitosa en la web y redes
Inputs
- Plataforma destino:
Web
- Boletín aprobado
Salida Esperada
- Publicado en web
- Mensaje:
"Boletín publicado exitosamente"
Caso 2: Envío por correo electrónico a lista de suscriptores
Inputs
- Lista de correos: 100 direcciones
- Contenido listo para envío
Salida Esperada
- Correos enviados correctamente
- Mensaje:
"100 correos enviados correctamente"
Caso 3: Error por límite de API en red social
Inputs
- Plataforma:
Facebook
- Boletín grande (excede límite)
Salida Esperada
- Publicación fallida en Facebook
- Mensaje:
"Error: límite de publicación alcanzado"
Caso 4: Publicación con historial activado
Inputs
- Boletín nuevo
- Opción "guardar en historial" activada
Salida Esperada
- Boletín publicado y archivado
- Mensaje:
"Publicado y registrado en historial"