[30388f42] feat: Add automated test infrastructure for core services
This commit is contained in:
43
docs/TESTING.md
Normal file
43
docs/TESTING.md
Normal file
@@ -0,0 +1,43 @@
|
||||
# Testing & Qualitätssicherung
|
||||
|
||||
Dieses Projekt nutzt automatisierte Integrationstests, um die Stabilität der Microservices sicherzustellen. Alle Tests sind so konzipiert, dass sie **innerhalb** der Docker-Container laufen und externe Abhängigkeiten (KI-APIs) mocken.
|
||||
|
||||
## 🚀 Alle Tests ausführen
|
||||
|
||||
Führen Sie die folgenden Befehle auf dem Host-System aus, um die jeweilige Test-Suite zu starten:
|
||||
|
||||
### 1. Company Explorer (Intelligence Core)
|
||||
```bash
|
||||
docker exec company-explorer /app/run_tests.sh
|
||||
```
|
||||
|
||||
### 2. SuperOffice Connector (CRM Sync)
|
||||
```bash
|
||||
docker exec connector-superoffice /app/run_tests.sh
|
||||
```
|
||||
|
||||
### 3. Lead Engine (Trading Twins)
|
||||
```bash
|
||||
docker exec lead-engine /app/run_tests.sh
|
||||
```
|
||||
|
||||
### 4. B2B Marketing Assistant (Analysis)
|
||||
```bash
|
||||
docker exec b2b-marketing-assistant /app/run_tests.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Test-Architektur
|
||||
|
||||
* **Framework:** `pytest`
|
||||
* **API-Testing:** `httpx` & `FastAPI TestClient`
|
||||
* **Datenbank:** SQLite In-Memory (oder temporäre Datei-DB)
|
||||
* **Mocking:** `unittest.mock` wird verwendet, um Aufrufe an Gemini/OpenAI zu simulieren.
|
||||
|
||||
## 📝 Neue Tests hinzufügen
|
||||
|
||||
Um neue Tests für einen Dienst zu erstellen:
|
||||
1. Erstellen Sie eine Datei in `service-name/tests/test_*.py`.
|
||||
2. Stellen Sie sicher, dass das `run_tests.sh` Skript im Dienst-Ordner diese Datei inkludiert.
|
||||
3. Kopieren Sie die Datei ggf. in den Container (`docker cp`).
|
||||
Reference in New Issue
Block a user