Was ist NUnit?
NUnit reiht sich als Vertreter der xUnit-Familie als Framework für Unit-Tests auf .NET-Plattformen ein. Es fundiert auf dem von Kent Beck entwickelten JUnit-Framework und wurde unter anderem von Charlie Poole, Rob Prouse, Simone Busoli und Neil Colvin entwickelt. Durch die MIT License ist es ebenfalls kostenlos kommerziell ohne Einschränkungen nutzbar. NUnit ist eines der beliebtesten Unit Test / Komponententestframeworks unter C#.
Testen mit NUnit
Als Unit-Test-Framework eignet sich NUnit besonders gut für Test Driven Development. Die Testfälle werden hier bereits vor der eigentlichen Softwareentwicklung spezifiziert und programmiert, um von Beginn an fehlerfreien und funktionalen Code zu erzeugen. NUnit unterscheidet bei getestetem Code, ähnlich wie JUnit, ebenfalls nur zwischen dem Testergebnis „True“ oder „False“, da der getestete Code entweder die gewünschte Funktion fehlerfrei erfüllt, oder nicht.
Die Tests für NUnit müssen dabei in einer .Net Programmiersprache (z.B. C#) geschrieben sein, was fundierte Programmierkenntnisse voraussetzt. NUnit wird auch von Haus aus mit Visual Studio ausgeliefert, neben Unit Test / Komponententest Frameworks wie xUnit und MSTest:
Erweiterungen
Um nicht nur Desktopapplikationen testen zu können, gibt es einige Erweiterungen, die auch das Testen von mobilen und hybriden Applikationen unterstützen. Seit dem Release von Version 3 bietet NUnit eine Anbindung zu Xamarin, mit der Android- und IOS-Anwendungen testbar gemacht werden.
Vor- und Nachteile von NUnit
Vorteile
- „Schnelles“ Testen unterstützt frühzeitige Fehlerfindung im Softwarecode
- Gratis unbeschränkt nutzbar
- Dauerhafte Aktualisierung
- Große Menge an Dokumentation, Tutorials und Hilfestellungen
- Große Funktionalität durch Plugins und Erweiterungen
Nachteile
- Wie bei allen Unit-Tests ist die Testerstellung nur mit Programmierkenntnissen möglich
Verwandte Begriffe
NUnit fügt sich als Framework für Unit-Tests in eine Reihe von anderen Frameworks ein. Weitere Vertreter dieser Familie sind unter anderem
- PHPUnit für PHP
- CppUnit für C++
- JUnit für Java
- QUnit für Javascript
- DUnit für Delphi