Qualcosa che ho notato di recente è quando sto facendo i seguenti tipi di progetti:
- All'inizio di un progetto
- Lavorando su un MVP / prototipo
- Aggiunta di funzionalità che non sono completamente definite
- Lavorando su un progetto su scala ridotta
Per riferimento, sto lavorando a un progetto Python che attualmente ha ~ 1k righe di codice, inclusi alcuni commenti e tutti gli spazi bianchi.
Trovo immensamente più semplice scrivere prima test di integrazione, lavorare sul codice e poi, una volta che l'API è un po 'rafforzata, in realtà lavorare sull'aggiunta di test unitari. I tipi di test che posso eseguire sulla mia main
funzione, per così dire, e sono più "end to end" di ogni altra cosa.
Questo perché i test unitari sono davvero fastidiosi quando un'API sta cambiando abbastanza rapidamente, come spesso accade quando si lavora su un progetto che soddisfa uno o la maggior parte dei criteri di cui sopra.
Questo approccio è un buon approccio e quali criteri dovrebbero essere presi in considerazione quando si decide se iniziare prima con i test unitari o di integrazione per questi tipi di progetti? Mi manca il valore del test unitario di questo tipo di progetti prima che le API siano più consolidate?