Qualcosa che ho notato di recente è quando sto facendo i seguenti tipi di progetti:
- All'inizio di un progetto
 - Lavorare su un MVP / prototipo
 - Aggiunta di funzioni che non sono completamente definite
 - Lavorare su un progetto su scala ridotta
 
Per riferimento, sto lavorando ad un progetto Python che attualmente ha ~ 1k linee di codice, inclusi alcuni commenti e tutti gli spazi bianchi.
 Trovo immensamente più facile scrivere per primi test di integrazione, lavorare sul codice e  quindi  una volta che l'API è in qualche modo rafforzata, in realtà funziona sull'aggiunta dei test unitari. I tipi di test che posso eseguire sulla mia funzione   main   , per così dire, sono più "end to end" di qualsiasi altra cosa. 
Questo perché i test unitari sono davvero fastidiosi quando un'API sta cambiando abbastanza rapidamente, il che spesso accade quando si lavora su un progetto che corrisponde a una o più delle seguenti condizioni.
Questo approccio è un buon approccio e quali criteri dovrebbero essere presi in considerazione quando si decide se iniziare con test di unità o integrazione prima per questi tipi di progetti? Mi manca il valore dell'unità testare questi tipi di progetti prima che le API siano più solide?