Skip to content

Latest commit

 

History

History
48 lines (35 loc) · 1.5 KB

File metadata and controls

48 lines (35 loc) · 1.5 KB

Teststrategie

Ziele

  • Sicherstellen, dass alle CLI-Kommandos korrekt funktionieren.
  • Verhindern von Regressionen bei Datenbank-Operationen und Audit-Log.
  • Reproduzierbare Tests ohne Abhängigkeit von lokaler Konfiguration.

Testansatz

  • CLI-Integrationstests (Standard-Library unittest): Die Tests rufen python -m euercli per Subprocess auf und prüfen Exit-Codes sowie die wichtigsten Ausgaben.
  • Isolierte Umgebung: Jede Test-Run nutzt ein temporäres HOME und eine eigene SQLite-DB (--db), damit die lokale Konfiguration unberührt bleibt.
  • Datei-Outputs: Exporte werden in temporäre Ordner geschrieben und geprüft.

Abdeckung

Die Test-Suite deckt folgende Funktionsbereiche ab:

  • init und Seed-Kategorien
  • add, list, update, delete für Ausgaben und Einnahmen
  • Duplikat-Erkennung (Hash)
  • summary inkl. Reverse-Charge-Logik
  • vat-report inkl. Periodenlogik, KZ-Mapping, Warnungen, CSV-Export und Rundung
  • audit (INSERT/UPDATE/DELETE)
  • export (CSV)
  • config show und setup (Onboarding-Wizard)
  • receipt check und receipt open (Fehlerpfade)
  • import (CSV) und incomplete list

Nicht automatisiert (manuell)

  • export --format xlsx und vat-report --format xlsx (benötigt openpyxl)
  • receipt open erfolgreicher Pfad (öffnet GUI/Datei-System)

Ausführen

python3 -m unittest discover -s tests

Optional (mit openpyxl installiert):

euer export --year 2026 --format xlsx
euer vat-report --year 2026 --format xlsx