Sono nuovo per i test automatici e dbUnit. Quindi apprezzerei il tuo consiglio.Come ripristinare il database allo stato iniziale utilizzando dbUnit?
Ho intenzione di creare una suite di test, che verrà eseguito nel modo seguente:
- creare un database di H2 in memoria
- script run DDL per la creazione di tabelle
- corsa DBUnit inserire iniziale dati (chiamiamolo STATE0) che verrà utilizzato da tutti i test.
- test run
Fino ci sembra bello per me, ma quello che non capisco, è come faccio Ripristinare il database alla State0 dopo una corsa di prova e ha cambiato i dati?
Posso farlo con dbUnit?
Oppure con qualcos'altro?
Devo ricreare il database prima di ogni test?
Le transazioni di prova semplici non eseguite nei test non sono appropriate per me, poiché i test alla fine eseguiranno più di una transazione potrebbero essere più di una connessione al database.
Fa veramente "resettare" il DB? Voglio dire, se il mio test inserisce alcuni dati nella tabella 'FOO' e se' MyDataSet.xml' non include 'FOO',' FOO' non sarà "resettato", giusto? –
@Pascal, probabilmente hai ragione. Essendo umano, è sempre consigliabile ricontrollare che se eseguo test che coinvolgono la tabella 'FOO', quella tabella è effettivamente inclusa nel set di dati. –
éter Sono d'accordo. È solo che il nitpicker in me non era pienamente convinto dal fraseggio dell'ultima frase :) +1 comunque. –