C# Test Driven Development

C# Test Driven Development

C# Test Driven development ist ein Ansatz in der Softwareentwicklung, bei dem zuerst Tests geschrieben werden, bevor der eigentliche Code geschrieben wird. Dieser Ansatz soll sicherstellen, dass der Code so entwickelt wird, wie es die Tests vorgeben.

Ein Test ist in der Regel eine Funktion, die eine bestimmte Eingabe hat und eine bestimmte Ausgabe liefert. Der Code wird so geschrieben, dass er die richtige Ausgabe für die gegebene Eingabe liefert.

Mit meinem kostenlosen Videokurs zu den Grundlagen von C# findest du den perfekten Einstieg in die Softwareentwicklung mit C#. Egal, ob du C# als Hobby, für die Uni oder für eine neue Karriere lernen möchtest, mit diesem Kurs lernst du C# schnell, einfach und professionell.
Mit meinem kostenlosen Videokurs zu den Grundlagen von C# findest du den perfekten Einstieg in die Softwareentwicklung mit C#.

Wenn der Code die Tests besteht, ist er in der Regel fertig. Wenn nicht, muss er so geändert werden, bis er die Tests besteht.

Viele Entwickler schwören auf diesen Ansatz, weil er sicherstellt, dass der Code funktioniert und weil er die Entwicklung schneller macht.

C# TDD Beispiel

Es gibt viele Test-Frameworks für C#. Alle verwenden in etwa den gleichen Ansatz. In diesem Beispiel verwenden wir das Testing-Framework NUnit.

using System;
using NUnit.Framework;

namespace TestDrivenDevelopment
{
   [TestFixture]
   public class Tests
   {
      [Test]
      public void Test1()
      {
         int a = 1;
         int b = 2;
         int c = a + b;

         Assert.AreEqual(3, c);
      }
  }
}

Der obige Code enthält einen Test, der überprüft, ob die Summe zweier Zahlen korrekt berechnet wird. Der Test hat zwei Zahlen (a und b) und überprüft, ob die Summe der beiden Zahlen (c) korrekt ist.

In diesem Fall sollte c gleich 3 sein. Wenn der Test erfolgreich ist, hat der Code die Tests bestanden. Wenn nicht, muss der Code so geändert werden, bis der Test erfolgreich ist.

Die Methode Assert.AreEqual überprüft, ob zwei Werte gleich sind. Wenn die beiden Werte gleich sind, ist der Test erfolgreich. Wenn nicht, ist der Test nicht erfolgreich.

Attribute von NUnit für C# Test Driven Development

[TestFixture] ist ein Attribut, das eine Klasse als Testklasse kennzeichnet. In einer Testklasse können mehrere Tests enthalten sein.

[Test] ist ein Attribut, das eine Methode als Test kennzeichnet. In einer Testklasse kann es mehrere Tests geben, die mit dem [Test] Attribut gekennzeichnet sind.

Weitere Methoden zum Testen

Assert.IsEqual – überprüft, ob ein Wert einem anderen gleicht

Assert.IsTrue – überprüft, ob ein Wert true ist

Assert.IsFalse – überprüft, ob ein Wert false ist

Assert.Null – überprüft, ob ein Wert null ist

Assert.NotNull – überprüft, ob ein Wert nicht null ist

Assert.Fail – markiert den Test als fehlgeschlagen

C# Test Driven Development – Test ausführen

Um einen Test in Visual Studio auszuführen, muss man zuerst die Test-Explorer öffnen. Dies kann über das Menü “Test”->”Windows”->”Test Explorer” erreicht werden. In dem Test Explorer können alle vorhandenen Tests angezeigt und ausgeführt werden.

Hier kannst du noch mehr über C# TDD erfahren.

✅ Lerne alle Grundlagen der C# Programmierung ✅ Der ideale Einstieg in die Softwareentwicklung ✅ 30+ HD Videolektionen ✅ Komplett kostenlos ✅ Sofortiger Zugriff
Der C# Grundlagenkurs
Kostenlos
Overlay Image
Der C# Grundlagenkurs
Kostenlos
✅ Alle Grundlagen der C# Programmierung ✅ Der ideale Einstieg in die Entwicklung ✅ 30+ HD Videolektionen ✅ Komplett kostenlos ✅ Sofortiger Zugriff
Overlay Image