Domanda

So che è possibile creare un TestCase o TestSuite con la procedura guidata all'interno di JUnit, ma come si fa a sync il codice dopo la classe sotto il test è stato modificato, come ad esempio la modifica firma del metodo oi metodi appena aggiunti. Vorrei che il mio casi di test per essere in grado di sincronizzare (rimuovere o aggiungere) quelle modificate metodi / parametri / metodo firme nei miei casi di test.

Ho provato a cercare su Google senza alcun risultato, forse c'è un plugin Eclipse per questo?

È stato utile?

Soluzione

I test che hanno un rapporto 1-1 con la struttura del codice di produzione sono un odore di prova. E 'molto meglio per le prove da scritti come una specificazione di comportamento del sistema (~ un test per ogni comportamento), invece di avere test generato in base al codice di produzione (~ un test per metodo).

http://blog.daveastels.com/files/BDD_Intro.pdf

  

Quando ti rendi conto che è tutto su come specificare il comportamento e non scrivere i test, il tuo punto di   vista turni. Improvvisamente l'idea di avere una classe di test per ciascuna delle classi di produzione è ridicolmente   limitante. E il pensiero di testare ciascuno dei vostri metodi con il proprio metodo di prova (in un   1-1 rapporto) sarà risibile.

Altri suggerimenti

Come accennato in precedenza, rifattorizzazione come rinomina o sposta si rifletteranno automaticamente nei casi di prova finché si refactoring per gli utensili Eclipse e non cambiando titolo manualmente per esempio.

Per quanto riguarda i nuovi metodi, è impossibile generare automaticamente i test. Naturalmente ci sono alcune eccezioni per il codice generato automaticamente cui è possibile controllare la generazione e dove si potrebbe generare casi di test come bene, ma per "normale" Codice manuale il meglio che si possa fare è stato quello di fornire stub (metodi vuoti), e che cosa è l'uso in questo?

Un approccio migliore è quello di tenere traccia copertura del codice utilizzando uno strumento come Cobertura o Emma , che succede ad avere un bel plug-in Eclipse che permette di vedere, all'interno del codice sorgente, che codice è coperto da prove e che non è. Questo allora è il vostro rapporto di cui avete bisogno di più test.

Se si modificano le firme metodo che utilizza il refactoring automatizzato, poi i casi di test - e tutti gli altri codice che chiama il metodo -. Verranno aggiornate automaticamente

Per i metodi appena aggiunto, non so di un modo per avere la classe di test aggiornata automaticamente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top