C#:
Tests Schreiben
Wie:
C#-Entwickler verwenden hauptsächlich die Frameworks NUnit oder xUnit zum Schreiben von Tests aufgrund ihrer Flexibilität und des umfangreichen Funktionsumfangs. Hier ist ein einfaches Beispiel, das NUnit verwendet, um eine einfache Additionsfunktion zu testen:
- Installieren Sie NUnit und NUnit3TestAdapter über den NuGet-Paketmanager oder die .NET CLI:
dotnet add package NUnit
dotnet add package NUnit3TestAdapter
Erstellen Sie ein C#-Klassenbibliotheksprojekt, falls Sie dies noch nicht getan haben.
Schreiben Sie eine einfache Funktion zum Testen. Zum Beispiel eine Additions-Methode in einer Klasse namens
Calculator
:
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}
- Schreiben Sie eine Testklasse mit NUnit:
using NUnit.Framework;
namespace CalculatorTests
{
[TestFixture]
public class CalculatorTests
{
[Test]
public void Add_ZweiGanzzahlenAddieren_GibtRichtigeSummeZurück()
{
// Arrange
var calculator = new Calculator();
int expected = 5;
// Act
int actual = calculator.Add(2, 3);
// Assert
Assert.AreEqual(expected, actual);
}
}
}
- Führen Sie den Test aus mit der Testumgebung Ihrer IDE oder der .NET CLI:
dotnet test
Beispiel-Ausgabe:
Wenn Ihr Test erfolgreich ist, sollten Sie eine Ausgabe ähnlich dieser sehen:
Testlauf erfolgreich.
Gesamttests: 1
Bestanden: 1
Gesamtzeit: 1.2345 Sekunden
Verwendung von xUnit:
Wenn Sie xUnit bevorzugen, ähnelt das Setup dem von NUnit. So würden Sie das Testbeispiel für die Klasse Calculator
mit xUnit umschreiben:
- Installieren Sie xUnit und xUnit.runner.visualstudio:
dotnet add package xUnit
dotnet add package xUnit.runner.visualstudio
- Schreiben Sie eine Testklasse mit xUnit:
using Xunit;
namespace CalculatorTests
{
public class CalculatorTests
{
[Fact]
public void Add_ZweiGanzzahlenAddieren_GibtRichtigeSummeZurück()
{
// Arrange
var calculator = new Calculator();
int expected = 5;
// Act
int actual = calculator.Add(2, 3);
// Assert
Assert.Equal(expected, actual);
}
}
}
- Führen Sie den Test mit der .NET CLI aus oder mit dem integrierten Testrunner Ihrer IDE.
Sowohl NUnit als auch xUnit bieten leistungsstarke Funktionen für parametrisierte Tests, Setup-/Teardown-Operationen und die Organisation von Tests in Kategorien, was sie zu unverzichtbaren Werkzeugen im Toolkit des C#-Programmierers für die Sicherstellung der Codequalität und Funktionalität macht.