2010-09-15 5 views
14

La mia azienda sta cercando di standardizzare un framework di isolamento. Stavo guardando MS Stubs (perché Moles mi sembrava bello e pensavo di tenerlo nello stesso schema). Tuttavia, Stubs non è ancora pronto per la prima serata (è ancora un po 'lo buggy in normal functionality).Quanto è stabile NSubstitute?

Così ora sto guardando quello che c'è là fuori. Ho dato un'occhiata a Moq and Rhino Mocks. Mentre lo facevo, mi sono imbattuto nel favoloso comparisons done by Richard Banks. In questo mostra NSubstitute. Mi piace molto quello che vedo lì.

Tuttavia, dopo essere stato bruciato un po 'da MS Stubs, non voglio scommettere su un Isolation Framework alfa/non di produzione.

Quindi, NSubstitute è pronto per la prima serata? O è ancora un po 'buggy?

+4

Ho appena scoperto NSubstitute dell'articolo di Richard Banks e, per un vecchio programmatore arrugginito come me, NSubstitute è un God-send! Dopo aver scherzato con Rhino Mocks per anni, NSubstitute funziona. Urrà per un software ben progettato! – harvest316

risposta

22

C'è un discussion about this nel gruppo ufficiale NSubstitute.

Il tag alfa è stato originariamente utilizzato per indicare che l'API era ancora soggetta a modifiche. L'API è ora stabilizzata e la maggior parte del lavoro eccezionale per una versione 1.0 è la documentazione. È possibile ottenere un'indicazione di qualche altro lavoro pianificato (per entrambe le versioni v1 e v2, funzioni per lo più pianificate) dal issue log.

Abbiamo utilizzato NSubstitute in un grande progetto con un team di 6 sviluppatori e ne siamo molto contenti.

Nota: lavoro su NSubstitute, quindi potrebbe essere un po 'parziale. :)

UPDATE:NSubstitute 1.0 has been released.

+0

Dolce! Sono molto felice di sapere che è in beta ora. La prossima settimana preparerò la mia compagnia per i test unitari, quindi avere l'uscita alpha ora è un tempismo perfetto! – Vaccano

9

Ho utilizzato NSubstitute sul mio project e non ho avuto alcun problema. Ho scelto NSubstitue principalmente per provarlo, perché mi piace la sintassi e quanto è facile falsificare un'implementazione perché è libera. Dato che non ero sicuro di continuare a usarlo al momento, ho messo un piccolo involucro attorno al mio DSL, ogni volta che ho bisogno di un falso.

Inoltre, in particolare sviluppo principalmente C# su Linux con Ubuntu, Mono e MonoDevelop e non ho avuto alcun problema con il funzionamento del runtime Mono 2.6.7. Probabilmente si può usare uno qualsiasi dei 2.6. * Runtime, ma non l'ho provato. Il runtime Mono 2.6. * È equivalente a .NET 3.5 Framework.

È tutto ciò che speravano, con la loro frase dal sito Web: è pensato per essere semplice, conciso e piacevole da usare.

+0

Grazie per l'input su come funziona bene con i tuoi progetti. – Vaccano

8

Stavamo usando Rhino Mock ma abbiamo sostituito tutto il nostro codice di simulazione con NSubstitute. È molto stabile, molto più semplice da utilizzare, richiede meno codice necessario per fare ciò che devi fare e un'API piccola, concisa ma efficace.

Lo consiglio vivamente!

+0

Utile, grazie :) – Coding4Fun