Desidero implementare test automatici, utilizzando il framework di testing Microsoft in Visual Studio, per i miei progetti di sviluppo software. Ho creato alcuni test e, tutto sommato, è abbastanza facile da usare.Come testate i vostri oggetti di business?
Quali sono alcune migliori pratiche per affari test oggetti, più specificamente quelli che leggono e scrivono in un database.
È meglio impostare un database di test separato, dal database di sviluppo da cui viene testata l'interfaccia utente e testare solo il database? Fondamentalmente basta riempirlo con dati spazzatura.
È meglio adottare qualche tipo di pulizia dopo la propria mentalità, cioè se sto testando il metodo AddUser, devo aggiungere l'utente, controllare i miei test e quindi eliminare l'utente?
Testate ciascuno dei metodi CRUD in un unico metodo di prova?
Infine, le singole regole aziendali, come la verifica delle stringhe, hanno le dimensioni corrette, le date di inizio sono inferiori alle date di fine, l'ID cliente è un cliente corretto e così via.
Mi rendo conto che questa è una domanda piuttosto ampia ... solo in cerca di qualche direzione ... prendendo piccoli passi.
Maggiori informazioni ...
Lotto di buone risposte! Non sono sicuro che sarei in grado di creare un database fittizio. Sto usando CSLA come framework per i miei oggetti. Ci vorrebbe qualche serio refactoring per renderlo testabile con oggetti finti. Ho intenzione di esaminare questo. Sebbene, ad un certo punto, I do voglia testare l'interazione del database ... quando si utilizza un database di simulazione, dove/quando si verificherà effettivamente la comunicazione del database?
Un'altra domanda ... è meglio mantenere ogni metodo di test non dipendente da altri test?
Trovato alcune buone regole di pollice qui http://msdn.microsoft.com/en-us/library/ms379625(VS.80).aspx. Concorda con molto di ciò che tutti stanno dicendo. – mattruma