I know this is pretty subjective, but I dive into testing and find out the mockery, and I'm trying to figure out which structure I should use. If you could tell me which ones you recommended, and most importantly why it is better than the others that you used , I would say. Or, if anyone knows where I can get a side-by-side comparison, which will also be useful.
Moq is the most advanced. It uses all the features of .NET 3.5 and C # 3.0. It would be interesting:
Rhino.Mocks, Moq NMock. Moq.
NSubstitute... , , .
:
[Test] public void SomeOtherTest() { //Arrange var mock = new Mock<IFoo>(); var sut = new SystemUnderTest(mock.Object); //never liked doing it this way... mock.Setup(m => x.Bar()).Returns("A whole bunch of ceremonial syntax.."); //Act sut.DoSomething(); //Assert mock.Verify(m => m.Baz()); //Baaaaah, more laaaaambdas }
--eryness
[Test] public void NSubTest() { var mock = Substitute.For<IFoo>(); var sut = new SystemUnderTest(mock); //much nicer! mock.Bar().Returns("Look ma! No lambdas!"); sut.DoSomething(); mock.Received().Baz(); }
.. github...
http://nsubstitute.github.com/
RhinoMocks, , :}
: http://code.google.com/p/mocking-frameworks-compare/
RhinoMocks. AAA (Arrange-Act-Assert). RhinoMocks . lambdas , LINQ. . , , , , , , . , "" , , . . , , framework, , . , RhinoMocks.
You can find a useful article by Richard Banks comparing mocking frameworks .
Note . In the interest of full disclosure, I am a co-author of NSubstitute , which comes out pretty profitably in comparison. :)
I used NMock and find it excellent. http://www.nmock.org/
However, this is the only one I used.