Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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?

like image 940
user372304 Avatar asked Apr 30 '10 02:04

user372304


People also ask

What C is used for?

C programming language is a machine-independent programming language that is mainly used to create many types of applications and operating systems such as Windows, and other complicated programs such as the Oracle database, Git, Python interpreter, and games and is considered a programming foundation in the process of ...

Is C language easy?

Compared to other languages—like Java, PHP, or C#—C is a relatively simple language to learn for anyone just starting to learn computer programming because of its limited number of keywords.

What is C in C language?

What is C? C is a general-purpose programming language created by Dennis Ritchie at the Bell Laboratories in 1972. It is a very popular language, despite being old. C is strongly associated with UNIX, as it was developed to write the UNIX operating system.

What is the full name of C?

In the real sense it has no meaning or full form. It was developed by Dennis Ritchie and Ken Thompson at AT&T bell Lab. First, they used to call it as B language then later they made some improvement into it and renamed it as C and its superscript as C++ which was invented by Dr.


2 Answers

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.

like image 128
McAden Avatar answered Sep 30 '22 02:09

McAden


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.

like image 41
brendan Avatar answered Sep 30 '22 00:09

brendan