Bogus für C# (.NET): Das vollständige Tutorial mit Beispielen

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Was ist Bogus und warum wird es benötigt?

Bogus ist eine leistungsstarke, einfache und schnelle Bibliothek zur Generierung von Fake-Testdaten in C# (.NET). Sie ist ein direkter Port der beliebten JavaScript-Bibliothek Faker.js. Das Hauptziel von Bogus ist es, Entwickler von der manuellen Erstellung von Boilerplate-Code für Testdatensätze zu befreien.

Warum ist das wichtig? Stellen Sie sich vor, Sie entwickeln eine Anwendung, die mit Benutzern, Bestellungen, Produkten oder anderen Entitäten arbeitet. Für das Testen der Funktionalität (Unit-Tests, Integrationstests, Lasttests) benötigen Sie ständig Daten: Namen, Adressen, E-Mails, Telefonnummern, Text, Zahlen, Daten usw. Das manuelle Erstellen von 1000 User-Objekten mit unterschiedlichen Daten ist mühsam, zeitaufwendig und fehleranfällig. Bogus löst dieses Problem mit einer einzigen Codezeile.

Die wichtigsten Vorteile von Bogus:

  • Lokalisierung: Unterstützung für Dutzende von Sprachen und regionalen Formaten (de, en, fr, ru usw.).
  • Flexibilität: Sie können Daten unter Berücksichtigung von Geschäftsregeln generieren (z. B. "Preis muss größer als 0 und kleiner als 1000 sein").
  • Wiederholbarkeit: Durch die Verwendung eines Seeds erhalten Sie bei jedem Durchlauf identische Datensätze – entscheidend für reproduzierbare Tests.
  • Leistung: Bogus ist optimiert, um Millionen von Datensätzen in Sekundenschnelle zu generieren.
  • Typsicherheit: Arbeitet mit Ihren eigenen Klassen und Schnittstellen unter Verwendung der strengen Typisierung von C#.

Installation von Bogus

Bogus wird als NuGet-Paket vertrieben. Sie können es auf verschiedene Arten installieren:

1. Über die .NET CLI (empfohlen)

dotnet add package Bogus

2. Über die Package Manager Console (Visual Studio)

Install-Package Bogus

3. Über die NuGet-Paketverwaltungsoberfläche in Visual Studio

Öffnen Sie "NuGet-Pakete verwalten", suchen Sie nach "Bogus" und klicken Sie auf "Installieren".

Fügen Sie nach der Installation die using-Direktive in Ihren Code ein:

using Bogus;

Schnellstart: Erstes Beispiel

Lassen Sie uns eine einfache Sammlung von Person-Objekten mit deutschen Namen und Adressen generieren.

using Bogus;

// 1. Erstellen Sie die "Regeln" (Faker) für die Datengenerierung
//    Geben Sie das Gebietsschema "de" für deutsche Daten an
var faker = new Faker("de");

// 2. Generieren Sie 10 fiktive Personen
for (int i = 0; i < 10; i++)
{
    var person = new
    {
        Name = faker.Name.FullName(),    // Vollständiger Name
        Email = faker.Internet.Email(),  // E-Mail
        Phone = faker.Phone.PhoneNumber(), // Telefonnummer
        City = faker.Address.City(),     // Stadt
        Age = faker.Random.Int(18, 80)   // Alter zwischen 18 und 80
    };

    Console.WriteLine($"{person.Name}, {person.Age} Jahre, {person.City}, {person.Email}, {person.Phone}");
}

// Beispielausgabe (ändert sich bei jedem Durchlauf):
// Max Mustermann, 34 Jahre, Berlin, max.mustermann@example.com, +49 30 12345678
// Anna Schmidt, 27 Jahre, München, anna.schmidt@test.de, +49 89 98765432
// ...

Wie funktioniert das? new Faker("de") erstellt das Hauptgeneratorobjekt. Seine Eigenschaften Name, Internet, Phone, Address, Random sind integrierte "Kategorien" (APIs), die jeweils Dutzende von Methoden zur Generierung spezifischer Daten enthalten.

Wichtige Methoden und Funktionen von Bogus

Bogus bietet eine Vielzahl von Methoden. Nachfolgend sind 10+ der am häufigsten verwendeten Kategorien und ihre wichtigsten Methoden mit detaillierten Beispielen aufgeführt.

1. Name – Namensgenerierung

Funktion: Generiert Vornamen, Nachnamen, vollständige Namen, Präfixe und Suffixe (für die deutsche Lokalisierung).

Parameter: Die meisten Methoden benötigen keine Parameter, es gibt jedoch Überladungen

Empfehlungen