Qual è il modo migliore per attuare BDD / TDD in .NET 2.0?

voti
20

Sto cercando di aggiungere una suite di test per la mia domanda, comunque non posso muovere ai framework di test più recenti su .NET 3.5.

Qualcuno ha un suggerimento su buoni framework di test da usare?

È pubblicato 05/08/2008 alle 13:50
fonte dall'utente
In altre lingue...                            


12 risposte

voti
9

NUnit e Rhino vestito bene e il contenitore di auto-beffardo potrebbero essere di interesse.

Se stai guardando BDD anche allora NBehave è probabilmente una buona scelta. Se invece avete appena dire lo stile di BDD che si riferisce a unità di test (xSpec) anche se è possibile ottenere via con l'aggiunta di un quadro (anche se cose come specunit fanno aggiungere un po 'di zucchero sintattiche), ma si potrebbe desiderare di guardare MSpec è anche interessante.

Risposto il 12/09/2008 a 11:02
fonte dall'utente

voti
7

Scopri screencast di Rob Conery su BDD utilizzando MSpec. Molto impressionante http://blog.wekeroad.com/mvc-storefront/kona-3/

edit: Io uso questo approccio: http://10printhello.com/the-one-bdd-framework-to-rule-them/

Risposto il 17/06/2009 a 13:27
fonte dall'utente

voti
7

Usiamo MbUnit e Rihno Mocks e dimostrano di lavorare molto bene insieme. Nel fare TDD sarà quasi certamente bisogno di fare una qualche forma di iniezione di dipendenza, mentre questo può essere fatto manualmente, la sua pena di guardare un contenitore CIO, come il Castello di Windsor .

E vale la pena guardando lo schermo di Giovanni Paolo Bodhood getta per iniziare. Blog di JPB

Risposto il 06/08/2008 a 15:16
fonte dall'utente

voti
4

Questo è probabilmente un riassunto di ciò che è già stato detto, ma per TDD io personalmente uso Rhino Mocks e MBUnit. Rhino Mocks è un quadro di scherno che è libero e open source. Il vantaggio di Rhino Mocks è che non abbiamo bisogno di usare le stringhe di magia nel fissare le vostre aspettative come si fa in NMock.

Mi piace perché MBUnit MbUnit ha il concetto di RowTests, che consentono di variare gli ingressi al vostro metodo di prova. MBUnit è anche disponibile gratuitamente.

Anche voi volete fare in modo che tutto ciò che si sceglie per il vostro quadro unit testing è supportata dal CI (Continuous Integration Server). Nunit è supportata di default in Cruise Control.NET e si deve fare un po 'di lavoro extra per ottenere MBUnit per lavorare in CCNet.

Dal punto di vista IDE è necessario avere TestDriven.NET. TestDriven.NET si permette di destra test click ed eseguiti in IDE e supporta MBUnit e NUnit e altri.

NBehave è la libreria BDD ho usato. Non ho usato tutti gli altri quindi non ho potuto confrontare e contrapporre con voi, ma NBehave è sostenuto da Gallio da parte del team MBUnit, il che significa che è possibile eseguire i test BDD proprio come si farebbe il test di unità con TestDriven.NET.

Vorrei anche consigliare vivamente ReSharper. Troverete la vostra produttività aumenta in modo significativo con questo strumento refactoring e di orientamento. Essa vi aiuterà con il cambiare il vostro codice come si sta sviluppando i test.

Spero che questo ti aiuti

Risposto il 10/10/2008 a 19:06
fonte dall'utente

voti
4

Ho avuto un grande successo con NUnit pure.

Ho anche usato NMock quando nasce l'esigenza di oggetti mock. Come bonus aggiuntivo, la fabbrica per la creazione di oggetti mock è chiamata la beffa.

Per facilitare l'esecuzione di test di unità, ho usato TestDriven.NET per eseguire unit test come ho codificato. Inoltre, ho usato Cruise Control .NET per guardare SVN e verificare che ogni nuovo commit costruisce e passa tutti i test di unità.

Risposto il 06/08/2008 a 15:06
fonte dall'utente

voti
4

Per una libreria di oggetti Mock, ho trovato i BSD licenza Rhino.Mocks ad essere piuttosto piacevole.

Risposto il 05/08/2008 a 13:54
fonte dall'utente

voti
3

Ho intenzione di mettere un grido fuori per Moq . E 'pulito framework luce beffarda che aiuta l'utente nella fossa del successo.

Gli strumenti di test integrati in TFS vanno bene, di poter ottenere il lavoro fatto, ma spesso può essere un po 'ingombrante con cui lavorare. I report generati, la copertura del codice e poche altre porzioni sono particolarmente male, ti fanno andare calvo a 22 invece che 50.

Se siete veramente amare la sperimentazione, in considerazione cercando un po 'di Continuous Integration. Vi sentirete il dolore dalla regressione in modo rapido e potenzialmente aiutare a raggiungere l'obiettivo finale più veloce.

Indipendentemente da quello che provi un paio e vedere quale è il più naturale, se avete tempo. Buona fortuna e codifica felice.

Risposto il 27/09/2008 a 05:28
fonte dall'utente

voti
3

Utilizzando NUnit con TFS non è troppo difficile. C'è anche un progetto su CodePlex per implementare questo: NUnit per il Team Build cui anche "pubblica" i risultati al magazzino.

Non ho provato - ma vorrei consigliare i clienti che hanno un grande investimento (o che hanno una forte preferenza per sopra lo strumento MSTest) in NUnit che sono interessati a implementare TFS per continuare con NUnit invece di cercare di convertire tutte le loro test esistenti.

Risposto il 07/09/2008 a 13:58
fonte dall'utente

voti
3

NUnit è disponibile presso http://www.nunit.org Vorrei suggerire questo anche quando si lavora sul MS stack - il supporto per le strutture non-MS sta accadendo nelle anteprime MVC che mostra un movimento preciso nella giusta direzione per permettere a noi tutto per personalizzare le nostre pile per adattarsi.

Risposto il 05/08/2008 a 14:03
fonte dall'utente

voti
2

Per il mio progetto, ho usato NUnit e TestDriven.NET con grande successo. Si sia possibile creare una libreria separata solo per ospitare il vostro codice di prova o si può mettere nel vostro eseguibile o libreria. Tutto dipende se si desidera che il codice di produzione per essere intrecciarsi con il codice di prova.

Per Dependency Injection, io uso Ninject nel mio progetto attuale e la sua grande opera. Se si utilizza l'iniezione di costruzione, non è necessario ingombrare il codice con l'attributo [Inject].

Non ho usato una libreria finta per il mio progetto NET 2.0, ma per un altro progetto NET 3.5 userò Moq

Si noti che tutto questo funziona con .NET 2.0 e superiori. (Ad eccezione di Moq)

Risposto il 17/06/2009 a 13:48
fonte dall'utente

voti
2

Vi consiglio il seguente:

TestDriven.NET - Unit Testing add on per VS, che è completamente integrata con tutti i principali quadri di unit test, tra cui NUnit, MbUnit ecc ...

Typemock Isolator - Un quadro di scherno per .Net Unit Testing

NUnit - Un quadro unit testing open source che è in C #.

Risposto il 15/10/2008 a 15:24
fonte dall'utente

voti
2

NUnit è sempre uno dei miei preferiti. Tuttavia, se si utilizza TFS come controllo del codice sorgente vi consiglio di bastone con lo stack Microsoft.

Risposto il 05/08/2008 a 13:51
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more