Scrive i test delle unità per le librerie o solo l'applicazione?

3

Sfondo

Sono abbastanza nuovo per il test delle unità e recentemente ho utilizzato Visual Studio Test Manager per creare i miei Test di unità. Il modo in cui attualmente sto facendo le cose è il seguente:

  1. Crea alcune librerie.
  2. Aggiungi le librerie a un'unica soluzione, insieme all'applicazione.
  3. Crea una cartella denominata Test in cui ho inserito il mio progetto Test .
  4. Scrivi test unitari per le mie librerie e inseriscile nella stessa cartella denominata "Test".

Eseguo tutti i miei test e questo metodo sembra funzionare per me. La ragione per cui lo faccio in questo modo è che a volte sento di non poter creare alcun test pratico a meno che tutte le classi necessarie per l'applicazione siano effettivamente presenti / coinvolte nella mia soluzione.

Domanda

Devo creare test mentre creo le librerie?

Non vedo la praticità, e sembra solo creare più overhead per fare il lavoro perché dovrei comunque creare nuovamente i test per la mia applicazione.

    
posta Snoop 21.04.2016 - 20:56
fonte

2 risposte

4

Dovresti creare test per tutto il codice che scrivi, a prescindere se sono librerie o la tua applicazione. Perché?

  1. puoi affermare che il codice che scrivi funziona
  2. i test asseriscono che quel codice continua funziona mentre modifichi o aggiungi il codice successivo.

In breve, non importa se si tratta di una libreria o di un'applicazione per cui stai scrivendo il codice.

    
risposta data 21.04.2016 - 21:57
fonte
0

Una volta che hai una vaga idea di cosa dovrebbe fare una classe o una funzione, hai abbastanza informazioni per scrivere test. Questi test potrebbero fallire, a causa della cosa che stai testando di essere rotta, ma è essenzialmente una buona cosa.

Se preferisci scrivere il codice prima di scrivere i test per il codice (a volte, avere un'implementazione può dare un'idea migliore di quali dati devono essere trasmessi), dovresti comunque mirare a scrivere il codice una volta che la classe o la funzione è stato completato, non aspettare fino a quando l'intera libreria è terminata.

    
risposta data 22.04.2016 - 11:18
fonte

Leggi altre domande sui tag