Files
nodeMap/docs/guide/mock-data.md

77 lines
1.8 KiB
Markdown

# 🧪 Mockdaten-Modus (`NEXT_PUBLIC_USE_MOCKS=true`)
Dieses Projekt unterstützt einen optionalen **Mockdaten-Modus**, um Entwicklung und Tests ohne
Backend/Webservice durchzuführen.
---
## 🔍 Zweck & Nutzen
- Schneller Entwicklungsstart ohne aktive Serververbindung
- Stabilere Testszenarien mit festen JSON-Daten
- Vollständige Isolation von Backend-Fehlern während der UI-Entwicklung
---
## ⚙️ Aktivierung
Mockdaten werden aktiviert durch folgende Umgebungsvariable:
```env
NEXT_PUBLIC_USE_MOCKS=true
```
Diese Variable wird in `.env.local` gesetzt und **nicht** für die Produktionsumgebung verwendet.
Im Produktivbetrieb steht:
```env
NEXT_PUBLIC_USE_MOCKS=false
```
---
## 🧩 Funktionsweise
Wenn `NEXT_PUBLIC_USE_MOCKS=true` gesetzt ist:
- Statt realer Webservices werden Endpunkte unter `/pages/api/mocks/webservice/*.js` aufgerufen
- Diese geben vorbereitete JSON-Dateien unter `/mockData/*.json` zurück
---
## 📂 Beispiel-Aufruf im Mockmodus
```ts
// Beispiel aus fetchGisSystemStaticService.js
const url = useMocks
? "/api/mocks/webservice/GisSystemStatic"
: `${apiUrl}/WebServiceMap.asmx/GisSystemStatic`;
```
---
## 🛡️ Sicherheit & Versionskontrolle
- Alle `.json`-Dateien im Ordner `/mockData/` sind über `.gitignore` vom Repository ausgeschlossen
- So wird verhindert, dass versehentlich sensible Testdaten veröffentlicht werden
---
## 💡 Hinweise
- Mockdaten sollen nur die wichtigsten API-Schnittstellen simulieren
- Bei Änderungen am Datenmodell sollten auch die Mockdaten aktualisiert werden
- Eine zentrale Thunk- & Service-Logik entscheidet automatisch, ob `mock` oder `real`
---
## 🔗 Weitere Informationen
- [📄 Umgebungsvariablen](env.md)
- [📄 Webservices im Detail](webservices.md)
- [📄 Zustandverwaltung (Redux)](redux-zustand.md)
---
[Zurück zur Übersicht](../README.md)