Spendi i tuoi sforzi per riutilizzare i test unitari obsoleti o riscriverli interamente? [chiuso]

-1

Ho questo progetto javascript che ha una suite di test unitaria (circa 200 test di unità) che copre circa l'11,31% del codice che stava testando. Il progetto si è evoluto notevolmente ma l'unità verifica dove non è mai stata aggiornata da allora. Ora ho due opzioni:

  1. Dedica un po 'di tempo ad aggiornare i test unitari esistenti e poi scrivi nuovi test unitari per il resto del codice.
  2. Riscrivi i test delle unità per l'intero progetto da zero.

Inoltre, solo il 10% circa di questi test unitari iniziali passa ora.

Pensieri?

    
posta s4san 14.10.2014 - 12:00
fonte

1 risposta

1

Il codice di test è ancora codice, destinato a svolgere alcune funzioni. Che sia una funzione "back room" o "back stage" è solo un dettaglio.

Ora hai una base di codice con 200 funzioni, che minimamente realizza la copertura che ti serve e solo il 10% funziona. Se si trattasse di un codebase rivolto all'utente, probabilmente concluderebbe che non valeva la pena aggiornarlo così com'è, dove è. Che una lavagna pulita - magari usando strumenti più aggiornati, o con nuovi casi di test che coprono più avidamente e completamente ciò che il modulo è diventato - sarebbe la strada giusta da percorrere.

Potresti non aver bisogno di "buttare via" tutto. Il 10% dei test è ancora valido, quindi potresti iniziare da quelli e scegliere il resto. O almeno scansionare e imparare dai test esistenti (sia funzionanti che possibilmente quelli che non funzionano, ma potrebbero essere vicini). La mia esperienza suggerisce che potresti trovare questo "imparare da, e occasionalmente copiare da" la vecchia base di test per accelerare il tuo nuovo sviluppo di test. Ma con una base di test a bassa copertura e bassa frequenza, iniziare con esso sembra più un problema e una difficoltà maggiore di quella che vale.

    
risposta data 14.10.2014 - 17:27
fonte

Leggi altre domande sui tag