Test-Coverage erweitern: Pipeline, Review Agent, Error-Pfade #53

Open
opened 2026-03-30 19:57:25 +00:00 by David · 0 comments
Collaborator

Beschreibung

Die Test-Coverage systematisch auf alle Services erweitern. Aktuell sind nur 7 von ~15 Services getestet (~30% Coverage). Insbesondere die kritischsten Komponenten (Pipeline, Review Agent, Error-Handling) haben KEINE Tests.

Hintergrund

Vorhandene Tests: auth, claude_runner, gitlab_service, odoo_poller, preparation, scoring_engine, tickets_api (~30KB Code).

Fehlen komplett:

  • Pipeline-Orchestrierung (komplexeste Komponente)
  • Review Agent
  • Repository-Operationen (clone, branch, push)
  • Admin Task Analysis
  • AppSignal Polling
  • WebSocket Updates
  • Error-Handling / Failure-Pfade in allen Services
  • Context File Service

Akzeptanzkriterien

  • Test für Pipeline: Vollständiger Flow scoring → preparation → execution → review → MR
  • Test für Pipeline: Failure in jeder Stage (Scoring-Fehler, Prep-Fehler, Claude-Timeout, Review-Reject)
  • Test für Review Agent: Approval-Flow, Changes-Requested-Flow, 3-Round-Loop
  • Test für Repo Analyzer: Clone, Branch-Erstellung, idempotente Operationen
  • Test für AppSignal Service: Incident-Fetching, Import, Error-Handling
  • Test für Context File Service: Erstellen, Aktualisieren, Cleanup
  • Alle externen APIs (Odoo, GitLab, Anthropic, AppSignal) gemockt
  • Edge Cases: Timeout, Netzwerk-Fehler, malformed JSON, leere Responses
  • Mindestens 70% Line-Coverage über alle Services

Technische Hinweise

  • Neue Tests: backend/tests/test_pipeline.py, test_review_agent.py, test_repo_analyzer.py, test_appsignal_service.py, test_context_file.py
  • Framework: pytest + pytest-asyncio (für async Tests)
  • Mocking: unittest.mock / pytest-mock
  • Coverage: pytest --cov=backend --cov-report=html
  • Migration nötig: nein

Aufwand: L

## Beschreibung Die Test-Coverage systematisch auf alle Services erweitern. Aktuell sind nur 7 von ~15 Services getestet (~30% Coverage). Insbesondere die kritischsten Komponenten (Pipeline, Review Agent, Error-Handling) haben KEINE Tests. ## Hintergrund Vorhandene Tests: auth, claude_runner, gitlab_service, odoo_poller, preparation, scoring_engine, tickets_api (~30KB Code). Fehlen komplett: - Pipeline-Orchestrierung (komplexeste Komponente) - Review Agent - Repository-Operationen (clone, branch, push) - Admin Task Analysis - AppSignal Polling - WebSocket Updates - Error-Handling / Failure-Pfade in allen Services - Context File Service ## Akzeptanzkriterien - [ ] Test für Pipeline: Vollständiger Flow scoring → preparation → execution → review → MR - [ ] Test für Pipeline: Failure in jeder Stage (Scoring-Fehler, Prep-Fehler, Claude-Timeout, Review-Reject) - [ ] Test für Review Agent: Approval-Flow, Changes-Requested-Flow, 3-Round-Loop - [ ] Test für Repo Analyzer: Clone, Branch-Erstellung, idempotente Operationen - [ ] Test für AppSignal Service: Incident-Fetching, Import, Error-Handling - [ ] Test für Context File Service: Erstellen, Aktualisieren, Cleanup - [ ] Alle externen APIs (Odoo, GitLab, Anthropic, AppSignal) gemockt - [ ] Edge Cases: Timeout, Netzwerk-Fehler, malformed JSON, leere Responses - [ ] Mindestens 70% Line-Coverage über alle Services ## Technische Hinweise - Neue Tests: `backend/tests/test_pipeline.py`, `test_review_agent.py`, `test_repo_analyzer.py`, `test_appsignal_service.py`, `test_context_file.py` - Framework: pytest + pytest-asyncio (für async Tests) - Mocking: unittest.mock / pytest-mock - Coverage: `pytest --cov=backend --cov-report=html` - Migration nötig: nein ## Aufwand: L
Sign in to join this conversation.
No description provided.