Erzeugen Sie realistische Fake-JSON-Daten aus einem JSON Schema für API-Tests, UI-Prototyping, Load-Tests und contract-driven Entwicklung.
Schritt 1 – JSON Schema bereitstellen
- Schema in den linken Editor einfügen oder aus Datei/URL/Beispiel importieren.
- Wenn möglich, vom echten API-Schema starten, damit Mock-Daten nah an der Produktion sind.
Schritt 2 – Schema mock-tauglich machen
- Vermeiden Sie nicht unterstützte Keywords wie
$ref, dependencies, und bedingte Schemas (if/then/else). - Wenn Ihr Schema
$ref, nutzt, öffnen Sie den Mock-Generator am besten aus einem Tool, das Schemas vorlädt und dereferenced (z. B. „Mock-Daten generieren“ auf Code→Schema-Seiten). - Fokussieren Sie auf type, properties, required, items, formats und Constraints.
Schritt 3 – Settings konfigurieren
- Locale wählen für realistische Namen, Adressen und Telefonnummern.
- Seed setzen für reproduzierbare Mock-Daten (ideal für Tests und Snapshots).
- Batch-Größe, Array-Anzahl, Zahlenverteilung und Optionals-Wahrscheinlichkeit anpassen.
- Missing/Dirty-Simulation nutzen, um Validierung und UI-Fehlerhandling zu testen.
Schritt 4 – Generieren und Ausgabe prüfen
- Klicken Sie auf „Mock-Daten generieren“, um Output gemäß Ihren Schema-Constraints zu erzeugen.
- Wenn Werte unplausibel wirken, Schema enger fassen (formats, enums, min/max) und neu generieren.
Schritt 5 – Mock-Daten in Tests und Generatoren nutzen
- JSON kopieren oder herunterladen und als Fixtures für Unit-/Integrationstests verwenden.
- Generiertes JSON in Code-Generatoren (TypeScript/Java/etc.) einspeisen, um passende DTOs zu erstellen.
Wichtiger Hinweis zu JSON-Schema-Features
- Schemas, die auf
$ref, dependencies, oder if/then/else setzen, müssen vor der Mock-Generierung vereinfacht oder dereferenced werden. - Schema-Validatoren interpretieren Drafts und Keywords unterschiedlich; für strikte Contract-Tests nutzen Sie in CI einen vollständigen Validator.
Beispiel: JSON Schema → Mock JSON
// JSON Schema (input)
{
"type": "object",
"properties": {
"id": { "type": "string", "format": "uuid" },
"email": { "type": "string", "format": "email" },
"active": { "type": "boolean" },
"createdAt": { "type": "string", "format": "date-time" }
},
"required": ["id", "email", "active", "createdAt"]
}
// Mock JSON (output example)
{
"id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",
"email": "[email protected]",
"active": true,
"createdAt": "2024-03-01T10:15:00.000Z"
}