Se è solo una semplice applicazione, il framework MSTest incorporato in VS2008 dovrebbe spuntare tutte le caselle. Non è lo stesso di NUnit, anche se molte persone (erroneamente) si riferiscono ad esso come se fossero la stessa cosa.
Non l'ho mai usato per prendere in giro, quindi forse qualcun altro può elaborarlo. Genera un progetto separato nella soluzione che è solo a scopo di test. This is a good explanation of how to use it.

Edit: Facendo un po 'di più di scavo, mi sono imbattuto in this comparison di MSTest e NUnit.
Inconvenienti di NUnit quadro:
- Installazione di NUnit è disponibile in una MSI separato.
- Nessuna integrazione con Visual Studio.
- Richiede la scrittura manuale di test.
- Nessuna generazione automatica di codice.
- Richiede l'apertura di una finestra separata (NUnit Console o GUI) per eseguire i test case.
- Ordine di esecuzione dei casi di test non disponibile.
- Nessuna funzione incorporata per eseguire il debug dei casi di test.
- Nessuna funzione incorporata per abilitare/disabilitare i casi di test.
- No caratteristica intrinseca che invia informazioni aggiuntive di casi di test, come stack trace, Trace Informazioni ecc
- No caratteristica intrinseca di risolvere casi di test in base al nome del computer, nome della classe e tipo host ecc
Ecco dall'articolo di confronto a cui mi sono collegato.
Non ho mai usato NUnit, solo MSTest per C# e JUnit per Java, quindi sono un po 'di parte in questo senso. MSTest ha sempre funzionato molto bene per me per WinForms, con funzionalità come essere in grado di eseguire i test singolarmente, mostrare report dettagliati (con log di traccia individuali) e generare automaticamente tutto il codice di prova di boilerplate e fare tutti quei tipi di cose che rendono VS2008 un IDE così brillante. A giudicare da ciò, NUnit ha funzionato bene per gli altri e hanno le loro ragioni per cui gli piace.
A meno che tu non abbia un motivo particolare per adottare l'approccio NUnit/Testdriven.NET, come se avessi bisogno di una determinata funzione, o preferisci semplicemente quel modo di impostare i test e provare a integrarlo in VS, allora non lo faccio Non vedo alcun motivo per non usare semplicemente MSTest che funziona immediatamente.
fonte
2009-10-08 02:03:23
Sembra ingiusto quando molte persone usano TestDriven.NET per guidare NUnit. Ciò fornisce una grande integrazione e rimuove la maggior parte degli inconvenienti che menzioni. L'attributo NUnit [Ignora] disabilita i metodi [Test] o [TestFixture]. Inoltre, i casi di test per ordinare IMHO sono un po 'puzzolenti :) – si618
ahi. 600 caratteri non saranno sufficienti. 1. questo è buono. Posso eseguire i miei test su qualsiasi macchina (build/QA) senza dover installare VSTS. 2. Se si desidera fare clic con il tasto destro del mouse ed eseguire i test, ottenere i componenti aggiuntivi Resharper/TestDriven.Net. Vedi anche SO q # 196740. # 3,4,6,10 - non ha senso. Credo che i programmatori conoscano il loro codice meglio di VS. Ne consegue che possono identificare meglio quali test scrivere. Ma poi sono infetto da test (leggi lo zealot TDD). i casi di test non dovrebbero essere dipendenti dall'ordine, quindi non sono sicuro del perché questo sia uno svantaggio. – Gishu
Contd ... È possibile eseguire il debug dei casi di test (aggiungere nunit come exe esterno per eseguire il debug della DLL di test); anche se ciò implica che non conosci più il tuo codice. Ordinamento dei casi di test - ancora non sono sicuro del motivo per cui ne hai bisogno. Ma potresti raggruppare i tuoi test in categorie come [Category ("Slow Test")] e quindi includerli o escluderli dalle esecuzioni di test. Hai anche una vista casella di controllo in cui puoi spuntare manualmente i test che desideri eseguire. Infine 9. stacktrace - nunit lo fa nella prima scheda. Un framework di testing unitario sarebbe un po 'azzoppato se non indicasse la posizione esatta in cui il test falliva! – Gishu