Skip to content

[Feature]: Introduzione dei test unitari nel progetto #9

@umbertocicciaa

Description

@umbertocicciaa

Problema o motivazione

Attualmente il progetto non dispone di una suite di test unitari automatizzati. Questo rende più difficile:

  • verificare rapidamente che le modifiche non introducano regressioni;
  • refactorizzare in sicurezza main.py e utils.py;
  • garantire comportamento consistente tra ambienti diversi.

L'assenza di test aumenta il rischio di bug in produzione e rallenta il ciclo di sviluppo/review.

Soluzione proposta

Introdurre una base di test unitari con pytest, includendo:

  • struttura iniziale tests/;
  • test per le funzioni principali in utils.py;
  • test dei comportamenti principali/esiti attesi in main.py (dove applicabile);
  • configurazione minima per esecuzione locale e in CI.

Passi suggeriti:

  1. Aggiungere pytest alle dipendenze di sviluppo.
  2. Creare primi test unitari sui casi d'uso core e casi limite.
  3. Integrare l'esecuzione test nella pipeline CI esistente.
  4. Documentare nel README.md come eseguire i test (pytest).

Alternative considerate

  • Solo test manuali: scartata perché non scalabile e soggetta a errori umani.
  • Solo test di integrazione/end-to-end: utili, ma più lenti e meno mirati nell'individuare regressioni puntuali.
  • Aggiungere test in un secondo momento: rimanda il problema e aumenta il debito tecnico.

Disponibilità a contribuire

  • Sono disponibile a implementare questa feature e aprire una PR

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions