[30388f42] feat: Add automated test infrastructure for core services

This commit is contained in:
2026-03-08 13:41:58 +00:00
parent 3a6183a85e
commit c467d62580
23 changed files with 420 additions and 8 deletions

43
docs/TESTING.md Normal file
View 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`).