user372304
user372304

Reputation: 143

C# testing framework that works like JUnit in Eclipse?

I come from a Java/Eclipse background and I fear that I am spoiled by how easy it is to get JUnit and JMock running in Eclipse, and have that GUI with the bar and pass/fail information pop up. It just works with no hassle.

I see a lot of great options for testing in C# with Visual Studio. NUnit looks really nice because it contains unit and mock testing all in one. The trouble is, I can't figure out how to get the IDE display my results. The NUnit documentation seems to show that it doesn't automatically show results through the VS IDE. I found http://testdriven.net/, which seems to trumpet that is makes VS display these stats and work with multiple frameworks, but it isn't open source.

Is there anyway to get unit and mock testing working with the VS IDE like it does in Java with Eclipse?

Upvotes: 7

Views: 2296

Answers (5)

Doobi
Doobi

Reputation: 4842

Have you tried using the Testing projects in Visual studio? They're practically identical to nUnit, and can be run simply by hitting F5.

For mocking, chose whichever suits you, We're looking at Moq for Silverlight support.

Upvotes: 0

eKek0
eKek0

Reputation: 23289

You could read ASP.NET MVC Test Framework Integration Walkthrough and run your tests from the VS test runner.

Upvotes: 1

Lex Li
Lex Li

Reputation: 63173

If you are looking for something like Eclipse/JUnit, you shouldn't have tried Microsoft product line.

But the good news is that SharpDevelop has such nice integration with NUnit and it is open source. However, it aims as an alternative to VS, not an addon for VS.

Upvotes: 1

McAden
McAden

Reputation: 13972

On installing NUnit you get an NUnit.exe - use this to open and run your tests. It has an UI and shows pass/fails and shows output.

You can add a build action in Visual Studio that on a specific testing configuration will build, then immediately invoke NUnit on that dll.

EDIT: (more details)

In test project:

  1. Project Properties -> Debug (set a build configuration - I use "NUnitDebug")
  2. Start Action -> "Start external program": C:\Program Files\NUnit 2.5.3\bin\net-2.0\nunit.exe (use your own path)
  3. Start Options -> Command line arguments: MyTestProject.dll (replace with the name of your DLL)

EDIT2: As brendan said, Moq is a good mock framework that can be used.

Upvotes: 6

brendan
brendan

Reputation: 29976

Resharper will let you do this and has a nice UI. I believe the core of it is NUnit. For the mock stuff you'll want to use Moq.

Resharper is not free/open source but is so worth the price.

Upvotes: 2

Related Questions