Unit Testing: quanto più codice? [duplicare]

4

Sono abbastanza nuovo per i test unitari. A scuola è sempre stato, "hey funziona, avanti!" Ma ho iniziato a scrivere professionalmente, e anche a lavoro è stato fondamentalmente il mantra. Tuttavia, ho iniziato a vedere la validità dei test unitari e TDD. Sono giunto alla conclusione che quando scrivo un pezzo di codice di 20 righe, di solito scrivo un codice di 100-250 righe per testare quelle linee di codice. Si tratta di media? Ci sono migliori best practice di testing unitario di cui non sono a conoscenza?

In ogni caso, ho pensato che fosse un'osservazione interessante e mi stavo chiedendo, in media, quanto più codice scrivi quando scrivi i tuoi test unitari?

    
posta user133688 04.05.2014 - 05:06
fonte

2 risposte

4

Per SQL Lite, il livello di test è elevato ... e intendo!

link

As of version 3.8.0, the SQLite library consists of approximately 84.3 KSLOC of C code. (KSLOC means thousands of "Source Lines Of Code" or, in other words, lines of code excluding blank lines and comments.) By comparison, the project has 1084 times as much test code and test scripts - 91452.5 KSLOC.

    
risposta data 04.05.2014 - 05:57
fonte
3

In generale, metto la linea su "i test unitari dovrebbero essere circa la metà della dimensione del codice che testano". Occasionalmente sarà più per codice vitale / complesso, ma più spesso significa solo che sto testando troppo. Cioè, sto scrivendo un sacco di test che difficilmente trovano o impediscono bug.

Non faccio molto in Python, e non so come stai scrivendo i test, quindi non posso dire se stai facendo qualcosa di male / inefficiente. È possibile che manchi una buona struttura di derisione. Più probabilmente, hai solo difficoltà a testare il codice (forse a causa di ciò che sta facendo, forse perché è mal progettato) e stai testando modo troppo.

    
risposta data 04.05.2014 - 05:22
fonte

Leggi altre domande sui tag