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:
- Aggiungere
pytest alle dipendenze di sviluppo.
- Creare primi test unitari sui casi d'uso core e casi limite.
- Integrare l'esecuzione test nella pipeline CI esistente.
- 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
Problema o motivazione
Attualmente il progetto non dispone di una suite di test unitari automatizzati. Questo rende più difficile:
main.pyeutils.py;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:tests/;utils.py;main.py(dove applicabile);Passi suggeriti:
pytestalle dipendenze di sviluppo.README.mdcome eseguire i test (pytest).Alternative considerate
Disponibilità a contribuire