From 77e3ec2a339fd8b9d82d1e40ce86689d7a72bff8 Mon Sep 17 00:00:00 2001 From: Lucas <3023626@stud.hs-mannheim.de> Date: Mon, 15 Jun 2026 16:04:17 +0200 Subject: [PATCH] Updated Modultestplan --- Modultestplan.md | 280 +++++++++++++++++++++++++++++---------- Modultestplan.pdf | Bin 0 -> 144916 bytes Pflichtenheft_GruppeA.md | 8 +- 3 files changed, 211 insertions(+), 77 deletions(-) create mode 100644 Modultestplan.pdf diff --git a/Modultestplan.md b/Modultestplan.md index dc22bc2..4c6e4a7 100644 --- a/Modultestplan.md +++ b/Modultestplan.md @@ -1,9 +1,9 @@ --- title: "Modultestplan" -subtitle: "Desktop-Fakturierungsanwendung — Gruppe A: Prozess / Dokumentenzyklus" +subtitle: "Desktop-Fakturierungsanwendung — Gesamtsystem (alle Komponenten)" author: - - Team 1 – Gruppe A -version: "1.0" + - Team 1 +version: "2.0" lang: de-DE toc: true toc-depth: 3 @@ -20,12 +20,19 @@ header-includes: | \usepackage{lastpage} \pagestyle{fancy} \fancyhf{} - \fancyhead[L]{Team 1 – Gruppe A} + \fancyhead[L]{Team 1} \fancyhead[C]{Modultestplan} - \fancyhead[R]{Version 1.0} + \fancyhead[R]{Version 2.0} \fancyfoot[C]{\thepage\ /\ \pageref{LastPage}} \renewcommand{\headrulewidth}{0.4pt} \renewcommand{\footrulewidth}{0pt} + \makeatletter + \def\brk@scan#1{\ifx\brk@end#1\else#1\allowbreak\expandafter\brk@scan\fi} + \newcommand{\brk}[1]{\brk@scan#1\brk@end} + \let\origtexttt\texttt + \renewcommand{\texttt}[1]{\origtexttt{\brk{#1}}} + \makeatother + \AtBeginEnvironment{longtable}{\small} --- \newpage @@ -35,103 +42,230 @@ header-includes: | +=========================+=========================+=========================+ | Strubel, Lucas | Prof. Dr. Marmitt, Gerd | Prof. Dr. Marmitt, Gerd | +-------------------------+-------------------------+-------------------------+ -| Gruppe A (Prozess) | Modulverantwortlicher | Modulverantwortlicher | +| Team 1 (Gesamtsystem) | Modulverantwortlicher | Modulverantwortlicher | +-------------------------+-------------------------+-------------------------+ | 15.06.2026 | 15.06.2026 | 15.06.2026 | +-------------------------+-------------------------+-------------------------+ **Freigabevermerk:** Dieses Dokument ist nach Prüfung und Freigabe durch den -Modulverantwortlichen verbindliche Grundlage für den Modultest der Komponente -*Prozess / Dokumentenzyklus*. +Modulverantwortlichen verbindliche Grundlage für den Modultest des Gesamtsystems +*Desktop-Fakturierungsanwendung* (Komponenten A–D, gemeinsame Infrastruktur sowie +Performance-Nachweise). ## Dokumentenhistorie | Version | Datum | Autor | Grund der Änderung | |---------|------------|-----------------------------|---------------------| | 1.0 | 15.06.2026 | Lucas Strubel | Initiale Erstellung (ausgegliedert aus Pflichtenheft Gruppe A v1.2) | +| 2.0 | 15.06.2026 | Lucas Strubel | Konsolidierung aller Komponenten-Testfälle (A–D, gemeinsame Infrastruktur, Performance) in einen projektweiten Modultestplan | \newpage ## 1. Einleitung ### 1.1 Zweck des Dokuments -Dieser Modultestplan spezifiziert die Modul-/Komponententests der Komponente -*Prozess / Dokumentenzyklus* (Gruppe A). Er leitet sich direkt aus dem Pflichtenheft -Gruppe A (ab Version 1.2) ab — insbesondere aus den funktionalen Anforderungen (Kapitel 4), -den Daten und Schnittstellen (Kapitel 6) sowie den testbaren Abnahmekriterien (Kapitel 8) — -und überführt diese in deterministische, mit JUnit umsetzbare Testfälle. +Dieser Modultestplan spezifiziert die Modul-/Komponententests des **Gesamtsystems** +*Desktop-Fakturierungsanwendung*. Er fasst die Testfälle aller vier Komponenten +(A – Prozess/Dokumentenzyklus, B – Produktverwaltung, C – Kundenverwaltung, +D – Programmoberfläche), der gemeinsam genutzten Infrastruktur (Paket `gemeinsam`) sowie +die übergreifenden Performance-/Lastnachweise in einem Dokument zusammen. Die Testfälle +leiten sich aus den funktionalen Anforderungen, Daten/Schnittstellen und testbaren +Abnahmekriterien der jeweiligen Pflichtenhefte ab und überführen diese in deterministische, +mit JUnit 5 umgesetzte Testfälle. Quelle der Wahrheit sind die Testklassen unter +`src/test/java/de/team1/faktura/…`. ### 1.2 Rahmenbedingungen Die folgenden Testfälle sind deterministisch (feste Ein-/Ausgaben) und mit JUnit 5 -umsetzbar. Geldbeträge werden als `BigDecimal` mit Scale 2 erwartet -(`assertEquals(new BigDecimal("119.00"), …)` bzw. `compareTo`). Die Schnittstellen der -Gruppen B (Produkte) und C (Kunden) sowie der PDF-Export werden in den Tests durch Stubs -ersetzt. +umgesetzt. Geldbeträge werden als `java.math.BigDecimal` mit **Scale 2** erwartet +(`assertEquals(new BigDecimal("119.00"), …)` bzw. `compareTo`). Die jeweils benachbarten +Komponenten werden im Modultest durch **Stubs/Mocks** ersetzt: + +- **Komponente A** ersetzt die Schnittstellen der Gruppen B (Produkte) und C (Kunden) sowie + den PDF-Export durch Stubs. +- **Komponente B** ersetzt die Schnittstelle `ProduktReferenzPruefung` (Gruppe A) durch einen Stub. +- **Komponente C** ersetzt die Schnittstelle `KundenReferenzPruefung` (Gruppe A) durch einen Stub. +- **Komponente D** ersetzt die Service-Schnittstellen der Gruppen A–C durch Stubs/Mocks. + +Die Abkürzungen für die abgedeckten Pflichtenheft-Anforderungen (Spalte *Abgedeckte +PH-Anf.*) sind **komponentenlokal** zu lesen: `F-01` in Abschnitt 2.2 bezeichnet eine +Anforderung des Pflichtenhefts B, nicht des Pflichtenhefts A. ## 2. Testfälle -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | -+=======+====================+=============================+===========================+=============================+ -| TC-01 | F-23, F-03 | Position mit Netto 100.00 | `berechne()` | Steuer = 19.00, Brutto = | -| | | €, Steuersatz 0.19 | | 119.00 (Scale 2) | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-02 | F-23 | Einzelpreis 50.00 €, | Positionssumme | positionssummeNetto = | -| | | Menge 3 | berechnen | 150.00 | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-03 | F-03, F-13 | Beleg mit 2 Positionen | Summen berechnen | summeNetto = 200.00, | -| | | (150.00 € @ 0.19; | | summeSteuer = 32.00, | -| | | 50.00 € @ 0.07) | | summeBrutto = 232.00 | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-04 | F-12, GR-01 | Letzte Rechnungsnummer | `naechsteNummer` | liefert `R-2026-000124` | -| | | `R-2026-000123` | `(RECHNUNG, 2026)` | (lückenlos) | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-05 | F-12 (Format) | Zähler = 7, Jahr 2026 | `naechsteNummer` | liefert `R-2026-000007` | -| | | | `(RECHNUNG, 2026)` | (führende Nullen, `String`) | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-06 | F-14, GR-06 | Rechnungsdatum 2026-06-09, | Rechnung erstellen | zahlungsziel = | -| | | kein Zahlungsziel | | 2026-06-23 (+14 Tage) | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-07 | F-14 | Rechnungsdatum 2026-06-09, | Rechnung erstellen | zahlungsziel = 2026-07-31 | -| | | Zahlungsziel 2026-07-31 | | (übernommen) | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-08 | F-24, NF-INT-01 | Rechnung im Status | `setzePosition(...)` / | wirft | -| | | `VERSENDET` | Änderung | `IllegalStateException` | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-09 | F-19, F-20 | Rechnung im Status `OFFEN` | `storniere()` | Status = `STORNIERT`; | -| | | | | nicht in | -| | | | | `offeneRechnungen()`; | -| | | | | `storniertAm` gesetzt | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-10 | F-22, GR-05 | Angebot `AN-2026-000001` | `ausAngebot(angebot)` | AB übernimmt Kunde/ | -| | | mit Kunde + 2 Positionen | (AB erzeugen) | Positionen/Mengen; | -| | | | | `vorgaengerNr` = | -| | | | | `"AN-2026-000001"` | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-11 | F-23, F-24 | Rechnung mit Produkt @ | erste Rechnung erneut | einzelpreisNetto bleibt | -| | | 50.00 €; danach | lesen | 50.00 (Snapshot | -| | | Produktpreis → 80.00 € | | unverändert) | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-12 | F-18, NF-USE-02 | Rechnung ohne Kunde | `speichere()` | Speichern abgelehnt; | -| | | **oder** ohne Position | | Validierungsfehler benennt | -| | | | | fehlendes Pflichtfeld | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ -| TC-13 | F-11, F-12, F-13 | Kunde + 1 Position | vollständige Rechnung | Rechnung gespeichert, | -| | | vorhanden | erstellen | Nummer vergeben, alle | -| | | | | § 14 UStG-Pflichtangaben | -| | | | | gesetzt | -+-------+--------------------+-----------------------------+---------------------------+-----------------------------+ +### 2.1 Komponente A — Prozess / Dokumentenzyklus -Damit sind 13 Testfälle (> 10) spezifiziert, die alle funktionalen Kernregeln (F-12, F-14, -F-18, F-22, F-23, F-24) sowie die zentralen Geschäftsregeln (GR-01, GR-02, GR-03, GR-05, -GR-06) abdecken. +#### 2.1.1 Dokumentenzyklus (`DokumentzyklusTest`) -## 3. Abkürzungen +| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| TC-01 | F-23, F-03 | Position mit Netto 100.00 €, Steuersatz 0.19 | `berechne()` | Steuer = 19.00, Brutto = 119.00 (Scale 2) | +| TC-02 | F-23 | Einzelpreis 50.00 €, Menge 3 | Positionssumme berechnen | positionssummeNetto = 150.00 | +| TC-03 | F-03, F-13 | Beleg mit 2 Positionen (150.00 € @ 0.19; 50.00 € @ 0.07) | Summen berechnen | summeNetto = 200.00, summeSteuer = 32.00, summeBrutto = 232.00 | +| TC-04 | F-12, GR-01 | Letzte Rechnungsnummer `R-2026-000123` | `naechsteNummer(RECHNUNG, 2026)` | liefert `R-2026-000124` (lückenlos) | +| TC-05 | F-12 (Format) | Zähler = 7, Jahr 2026 | `naechsteNummer(RECHNUNG, 2026)` | liefert `R-2026-000007` (führende Nullen, `String`) | +| TC-06 | F-14, GR-06 | Rechnungsdatum 2026-06-09, kein Zahlungsziel | Rechnung erstellen | zahlungsziel = 2026-06-23 (+14 Tage) | +| TC-07 | F-14 | Rechnungsdatum 2026-06-09, Zahlungsziel 2026-07-31 | Rechnung erstellen | zahlungsziel = 2026-07-31 (übernommen) | +| TC-08 | F-24, NF-INT-01 | Rechnung im Status `VERSENDET` | `setzePositionen(...)` / Änderung | wirft `IllegalStateException` | +| TC-09 | F-19, F-20 | Rechnung im Status `OFFEN` | `storniere()` | Status = `STORNIERT`; nicht in `offeneRechnungen()`; `storniertAm` und `storniertVon` gesetzt | +| TC-10 | F-22, GR-05 | Angebot `AN-2026-000001` mit Kunde + 2 Positionen | `erzeugeFolgebeleg(angebot)` (AB erzeugen) | AB übernimmt Kunde/Positionen/Mengen; `vorgaengerNr` = `"AN-2026-000001"` | +| TC-11 | F-23, F-24 | Rechnung mit Produkt @ 50.00 €; danach Produktpreis → 80.00 € | erste Rechnung erneut lesen | einzelpreisNetto bleibt 50.00 (Snapshot unverändert) | +| TC-12 | F-18, NF-USE-02 | Rechnung ohne Kunde **oder** ohne Position | `erstelleRechnung(...)` | Speichern abgelehnt; Validierungsfehler benennt fehlendes Pflichtfeld (`Kunde` bzw. `Position`) | +| TC-13 | F-11, F-12, F-13 | Kunde + 1 Position vorhanden | vollständige Rechnung erstellen | Rechnung gespeichert, Nummer `R-2026-…` vergeben, alle § 14 UStG-Pflichtangaben gesetzt | + +#### 2.1.2 Belegpersistenz (`JsonDokumentRepositoryTest`) + +| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| TC-14 | IF-01 (GoBD) | Repository mit gespeicherter Rechnung `R-2026-000001` (OFFEN) und Angebot `AN-2026-000001` (ENTWURF) | Repository neu instanziieren (Neustart) | beide Belege geladen (`alle().size() == 2`); polymorphe Typen `Rechnung`/`Angebot` bleiben erhalten; Positionen ≠ `null` | + +#### 2.1.3 PDF-Export (`PdfBoxPdfExporterTest`) + +| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| TC-15 | F-15, IF-01 | Vollständige Rechnung `R-2026-000001` | `exportiere(rechnung, ziel)` | PDF-Datei existiert am Zielpfad | +| TC-16 | F-15 (Robustheit) | Rechnung `R-2026-000099` mit Altdaten-Position (`produktReferenz`/`einzelpreisNetto`/`positionssummeNetto` = `null`) | `exportiere(rechnung, ziel)` | kein Fehler (`assertDoesNotThrow`); PDF-Datei existiert | +| TC-17 | F-23 (Robustheit) | Rechnung `R-2026-000098` mit `null`-Positionssummen | Summen berechnen | summeNetto = summeSteuer = summeBrutto = 0.00 (Scale 2) | + +#### 2.1.4 CSV-Datenexport der Belege (`DokumentCsvExportTest`) + +| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| TC-18 | Q-08, IF-04 | Repository mit 2 Rechnungen (je 1 Position); eine storniert (Datum 2026-06-10, Benutzer „Anwender") | `exportiereCsv(ziel)` | CSV mit Kopfzeile `belegnummer;belegtyp;datum;status…` + je Position eine Zeile (3 Zeilen); enthält `R-2026-000001` sowie `STORNIERT`/`Anwender` | + +### 2.2 Komponente B — Produktverwaltung + +PH-Anf.-Nummern beziehen sich auf das Pflichtenheft Gruppe B. Die Schnittstelle +`ProduktReferenzPruefung` (Gruppe A) wird durch einen Stub ersetzt. + +| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| TC-01 | F-01, F-02 | Höchste Produktnummer `P-000041` | Produkt („Beratungsstunde", 80.00, 0.19) speichern | Produkt persistiert; Produktnummer = `P-000042` | +| TC-02 | F-02 (Format) | Zähler = 7 | `naechsteNummer()` | liefert `P-000007` (führende Nullen, `String`) | +| TC-03 | F-03 | gültiges Produkt | Einzelpreis `-1.00` | Speichern abgelehnt (Validierungsfehler „Einzelpreis") | +| TC-04 | F-03 | gültiges Produkt | Steuersatz `0.15` | Speichern abgelehnt (unzulässiger Steuersatz) | +| TC-05 | F-04, NF-USE-01 | Produkt ohne Bezeichnung | `speichere()` | Speichern abgelehnt; Validierungsfehler benennt „Bezeichnung" | +| TC-06 | F-05 | Produkt `P-000042` mit Preis 80.00 | Preis auf 95.00 ändern, speichern | gespeichertes Produkt hat einzelpreisNetto = 95.00 | +| TC-07 | F-07 | Produkt `P-000042` | Änderungsversuch der Produktnummer auf `P-999999` | wirft `IllegalArgumentException` / Änderung abgelehnt | +| TC-08 | F-08 | Produkt unverknüpft (Stub: `istProduktReferenziert` → `false`) | `loescheProdukt("P-000011")` mit Bestätigung | Produkt entfernt; nicht mehr in `alleSortiertNachBezeichnung()` | +| TC-09 | F-09, F-10 | Stub: `istProduktReferenziert("P-000010")` → `true` | `loescheProdukt("P-000010")` | Löschen abgelehnt; Produkt weiterhin vorhanden; Hinweis erzeugt | +| TC-10 | F-11 | Produkte „Zaun", „Anker", „Mast" | `alleSortiertNachBezeichnung()` | Reihenfolge: „Anker", „Mast", „Zaun" | +| TC-11 | F-12 | Produkt „Beratungsstunde" | `suche("BERATUNG")` | Trefferliste enthält „Beratungsstunde" (case-insensitive, Teilstring) | +| TC-12 | F-12 | Produkt `P-000042` | `suche("P-000042")` | Trefferliste enthält genau dieses Produkt | +| TC-13 | F-14 | Kein Produkt `P-999999` vorhanden | `findeProdukt("P-999999")` | liefert `null` | +| TC-14 | F-15 | 3 Produkte im Bestand | `exportiereCsv(ziel)` | CSV-Datei mit Kopfzeile + 3 Datenzeilen, Semikolon-getrennt, UTF-8 | + +### 2.3 Komponente C — Kundenverwaltung + +PH-Anf.-Nummern beziehen sich auf das Pflichtenheft Gruppe C. Die Schnittstelle +`KundenReferenzPruefung` (Gruppe A) wird durch einen Stub ersetzt. + +| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| TC-01 | F-01, F-02 | Höchste Kundennummer `K-000016` | Kunde („Muster GmbH", „Hauptstr. 1", „68163", „Mannheim") speichern | Kunde persistiert; Kundennummer = `K-000017` | +| TC-02 | F-02 (Format) | Zähler = 7 | `naechsteNummer()` | liefert `K-000007` (führende Nullen, `String`) | +| TC-03 | F-03, NF-USE-01 | Kunde ohne Ort | `speichere()` | Speichern abgelehnt; Validierungsfehler benennt „Ort" | +| TC-04 | F-03 | Kunde mit leerem Namen (`""`) | `speichere()` | Speichern abgelehnt; Validierungsfehler benennt „Name" | +| TC-05 | F-04 | Kunde mit E-Mail `"max.mustermann"` | `speichere()` | Speichern abgelehnt (ungültiges E-Mail-Format) | +| TC-06 | F-04 | Kunde mit E-Mail `"max@beispiel.de"` | `speichere()` | Kunde gespeichert (gültiges Format) | +| TC-07 | F-05 | Kunde `K-000017` mit Ort „Mannheim" | Ort auf „Heidelberg" ändern, speichern | gespeicherter Kunde hat ort = „Heidelberg" | +| TC-08 | F-07 | Kunde `K-000017` | Änderungsversuch der Kundennummer auf `K-999999` | wirft `IllegalArgumentException` / Änderung abgelehnt | +| TC-09 | F-08 | Stub: `anzahlVerknuepfterDokumente` → `0` | `loescheKunde("K-000011")` mit Bestätigung | Kunde entfernt; nicht mehr in `alleSortiertNachName()` | +| TC-10 | F-09, F-10, GR-04 | Stub: `anzahlVerknuepfterDokumente("K-000010")` → `3` | `loescheKunde("K-000010")` | Löschen abgelehnt; Kunde weiterhin vorhanden; Hinweis enthält Anzahl `3` | +| TC-11 | F-11 | Kunden „Zimmer", „Albrecht", „Maier" | `alleSortiertNachName()` | Reihenfolge: „Albrecht", „Maier", „Zimmer" | +| TC-12 | F-12 | Kunde „Muster GmbH" | `suche("MUSTER")` | Trefferliste enthält „Muster GmbH" (case-insensitive, Teilstring) | +| TC-13 | F-12, F-14 | Kunde `K-000017` vorhanden; `K-999999` nicht | `suche("K-000017")`; `findeKunde("K-999999")` | Treffer enthält `K-000017`; `findeKunde` liefert `null` | +| TC-14 | F-15 | 3 Kunden im Bestand | `exportiereCsv(ziel)` | CSV-Datei mit Kopfzeile + 3 Datenzeilen, Semikolon-getrennt, UTF-8 | + +### 2.4 Komponente D — Programmoberfläche + +PH-Anf.-Nummern beziehen sich auf das Pflichtenheft Gruppe D. Getestet wird die GUI-freie +Controller- und Modell-Schicht; die Service-Schnittstellen der Gruppen A–C werden durch +Stubs/Mocks ersetzt. + +| TC | Abgedeckte PH-Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| TC-01 | F-09 | Wizard neu gestartet | `aktuellerSchritt` lesen | `KUNDE_WAEHLEN` (erster Schritt) | +| TC-02 | F-09 | Schritt 1 mit gewähltem Kunden | `weiter()` 4-mal mit gültigen Eingaben | Schrittfolge: `POSITIONEN_ERFASSEN` → `DATEN_BESTAETIGEN` → `ZUSAMMENFASSUNG` → `SPEICHERN` | +| TC-03 | F-10 | Schritt 1, kein Kunde gewählt (`kundenNr = null`) | `weiter()` | Wechsel verhindert; `Meldung(FEHLER, "Kunde", …)` erzeugt | +| TC-04 | F-10 | Schritt 2, leere Positionsliste | `weiter()` | Wechsel verhindert; Meldung benennt „Position" | +| TC-05 | F-10 | Schritt 2, Position mit `menge = 0` | `weiter()` | Wechsel verhindert; Meldung benennt „Menge" | +| TC-06 | F-11 | Schritt 3 erreicht; Kunde `K-000017`, 1 Position erfasst | `zurueck()` bis Schritt 1 | `kundenNr` und `positionen` unverändert erhalten | +| TC-07 | F-12 | Schritt 4; Stub `DokumentService` liefert Summen 200.00/38.00/238.00 | Zusammenfassung erzeugen | Zusammenfassung enthält Kunde, Positionen, Mengen, 200.00/38.00/238.00, Rechnungsdatum, Zahlungsziel | +| TC-08 | F-13 | Schritt 5; gültiges Modell | `speichern()` | genau **ein** Aufruf `erstelleRechnung(...)` am Mock; Erfolgsmeldung enthält gelieferte Rechnungsnummer | +| TC-09 | F-13 (Fehlerfall) | Stub `erstelleRechnung` wirft Validierungsfehler „Rechnungsdatum" | `speichern()` | keine Erfolgsmeldung; `Meldung(FEHLER, "Rechnungsdatum", …)` dargestellt (F-05/F-16) | +| TC-10 | F-14 | Dokumentliste mit Rechnungen in `OFFEN`, `VERSENDET`, `STORNIERT` | verfügbare Aktionen je Rechnung ermitteln | *Stornieren* nur bei Status `OFFEN` aktiviert | +| TC-11 | F-15 | Rechnung `R-2026-000124` | `storniere()` ohne Bestätigung; danach mit Bestätigung | ohne Bestätigung: kein Service-Aufruf; mit Bestätigung: genau ein Aufruf `storniere("R-2026-000124")` | +| TC-12 | F-08 | Beleg im Status `VERSENDET` | Änderungsaktionen ermitteln | alle inhaltlichen Änderungsaktionen deaktiviert; PDF-Export aktiviert | +| TC-13 | F-06 | Belege mit Status `OFFEN` (2×) und `STORNIERT` (1×) | Statusfilter `OFFEN` anwenden | Liste enthält genau die 2 offenen Belege | +| TC-14 | F-03 | Stub `KundenService.suche("Muster")` liefert 1 Treffer | Suchbegriff „Muster" eingeben | Controller delegiert an `KundenService.suche(...)`; Trefferliste enthält genau diesen Kunden | +| TC-15 | F-03 (D-F-03) | Stub `KundenService` mit 1 Kunden „Muster GmbH" | `kundenListe("")`, `(" ")`, `(null)`, `("Muster")`, `("unbekannt")` | leerer/fehlender Suchbegriff: gesamter Bestand (1); „Muster": 1 Treffer; „unbekannt": 0 Treffer | + +### 2.5 Gemeinsame Infrastruktur (Paket `gemeinsam`) + +Querschnittliche Dienste, die von allen Komponenten genutzt werden. Der `EreignisBus` +(Observer-Muster) ist in der Architektur der Komponente A (Pflichtenheft A §7) verortet; +`JsonPersistenz` ist die gemeinsame atomare JSON-Ablage hinter allen Repositories (IF-01). + +#### 2.5.1 Ereignisbenachrichtigung (`EreignisBusTest`) + +| TC | Abgedeckte Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| INF-01 | Observer (PH-A §7) | `EreignisBus` mit 2 Beobachtern für Bereich `KUNDEN` | `melde(KUNDEN)` 2× | beide Beobachter genau 2× benachrichtigt | +| INF-02 | Observer | Beobachter für `KUNDEN` und `DOKUMENTE` | `melde(DOKUMENTE)` | nur `DOKUMENTE`-Beobachter (1×); `KUNDEN`-Beobachter 0× | +| INF-03 | Observer (Robustheit) | `EreignisBus` ohne Beobachter | `melde(PRODUKTE)` | wirkungslos, keine Exception | + +#### 2.5.2 Atomare JSON-Persistenz (`JsonPersistenzTest`) + +| TC | Abgedeckte Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis | +|---------|------------|------------------------|----------------------|----------------------------| +| INF-04 | IF-01 (atomar) | leeres Verzeichnis | `schreibeAtomar(datei, ["a","b"])` | Zieldatei existiert; keine `.tmp`-Restdatei; Inhalt = `["a","b"]` | +| INF-05 | IF-01 | Datei mit Bestand `["alt"]` | `schreibeAtomar(datei, ["neu1","neu2"])` | Inhalt vollständig ersetzt = `["neu1","neu2"]` | +| INF-06 | IF-01 | Zielpfad mit fehlendem Unterordner | `schreibeAtomar(unterordner/datei, ["a"])` | fehlende Elternverzeichnisse angelegt; Datei existiert | + +### 2.6 Performance-/Lastnachweise (`PerformanceTest`) + +Übergreifende Lastnachweise gemäß Lastenheft. Referenzgröße: 5.000 Kunden, 5.000 Produkte, +1.000 Belege (vorab geseedet; das Befüllen fließt nicht in die Messung ein). Die Spalte +*Erwartetes Ergebnis* nennt die einzuhaltende Zeitschranke. + +| ID | Abgedeckte Anf. | Vorbedingung | Eingabe | Erwartetes Ergebnis (Zeitschranke) | +|---------|------------|------------------------|--------------------|------------------------------| +| Q-04 | Q-04 (Start) | Seeding 5.000 Kunden / 5.000 Produkte / 1.000 Belege (je JSON) | drei Repositories laden | Laden in ≤ 5 s | +| Q-02 | Q-02 (Suche) | Bestand wie Q-04 | Kunden-/Produktsuche + Auflistung | abgeschlossen in ≤ 1 s | +| Q-03 | Q-03 (PDF) | Rechnung mit 50 Positionen | `exportiere(rechnung, ziel)` | PDF-Erstellung in ≤ 2 s | +| Q-08 | Q-08 (Export) | Bestand wie Q-04 | Vollexport Kunden + Produkte + Belege als CSV | abgeschlossen in ≤ 30 s | + +## 3. Testumfang-Übersicht + +| Testklasse | Komponente | Anzahl | +|------------|-----------|--------| +| `dokumente/DokumentzyklusTest` | A – Prozess/Dokumentenzyklus | 13 | +| `dokumente/JsonDokumentRepositoryTest`| A – Belegpersistenz (IF-01/GoBD) | 1 | +| `dokumente/PdfBoxPdfExporterTest` | A – PDF-Export (F-15) | 3 | +| `dokumente/DokumentCsvExportTest` | A – CSV-Export Belege (Q-08) | 1 | +| `produkte/ProduktVerwaltungTest` | B – Produktverwaltung | 14 | +| `kunden/KundenVerwaltungTest` | C – Kundenverwaltung | 14 | +| `gui/OberflaechenControllerTest` | D – Programmoberfläche | 15 | +| `gemeinsam/EreignisBusTest` | Gemeinsame Infrastruktur (Observer) | 3 | +| `gemeinsam/JsonPersistenzTest` | Gemeinsame Infrastruktur (Persistenz) | 3 | +| `PerformanceTest` | Querschnitt (Q-02/Q-03/Q-04/Q-08) | 4 | +| **Summe** | | **71** | + +Damit sind **71 Testfälle** über alle vier Komponenten, die gemeinsame Infrastruktur und die +Performance-Nachweise spezifiziert. Sie decken die funktionalen Kernregeln, die zentralen +Geschäftsregeln (GR-01…GR-06) sowie die Qualitäts-/Performanceanforderungen (Q-02, Q-03, +Q-04, Q-08, Q-09) ab. + +## 4. Abkürzungen | Abkürzung | Bedeutung | |-----------|-----------| | TC | Testfall (Test Case) | -| F | Funktionale Anforderung (Pflichtenheft) | +| INF | Infrastruktur-Testfall (Paket `gemeinsam`) | +| F | Funktionale Anforderung (Pflichtenheft, komponentenlokal) | | NF | Nicht-funktionale Anforderung (Pflichtenheft) | +| IF | Schnittstelle (Interface) | | GR | Geschäftsregel (Lastenheft) | | Q | Qualitätsanforderung (Lastenheft) | | PH | Pflichtenheft | +| CSV | Comma-Separated Values (offenes Exportformat) | +| GoBD | Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung von Büchern | diff --git a/Modultestplan.pdf b/Modultestplan.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a1defc92a137c84bc52edf5c34891b856dfbea05 GIT binary patch literal 144916 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 SWCsE{*tigBXe5**5&sLFpv!vz literal 0 HcmV?d00001 diff --git a/Pflichtenheft_GruppeA.md b/Pflichtenheft_GruppeA.md index c9f7f90..73f3fad 100644 --- a/Pflichtenheft_GruppeA.md +++ b/Pflichtenheft_GruppeA.md @@ -50,7 +50,7 @@ und den Modultest der Komponente *Prozess / Dokumentenzyklus*. |---------|------------|-----------------------------|---------------------| | 1.0 | 09.06.2026 | Lucas Strubel | Initiale Erstellung | | 1.1 | 13.06.2026 | Lucas Strubel | Einfügen der UML-Diagramme (Klassen- und Sequenzdiagramm) | -| 1.2 | 15.06.2026 | Lucas Strubel | Modultestplan in eigenständiges Dokument (Modultestplan_GruppeA.md) ausgegliedert | +| 1.2 | 15.06.2026 | Lucas Strubel | Modultestplan in eigenständiges Dokument (Modultestplan.md) ausgegliedert | \newpage @@ -62,7 +62,7 @@ Auftragnehmers, **wie** die Komponente *Prozess / Dokumentenzyklus* der Desktop-Fakturierungsanwendung die Anforderungen des Lastenhefts (v1.3) erfüllt. Es konkretisiert die fachlichen Anforderungen in testbare Systemanforderungen und dient als direkte Grundlage für Design, Implementierung sowie den Komponenten- bzw. Modultestplan -(eigenständiges Dokument *Modultestplan_GruppeA.md*). +(eigenständiges Dokument *Modultestplan.md*). ### 1.2 Ziel Ziel dieses Pflichtenhefts ist die vollständige und testbare Spezifikation der Erzeugung, @@ -286,7 +286,7 @@ erfolgt (Nachweis durch Netzwerk-Monitoring während eines repräsentativen Nutz ## 6. Daten und Schnittstellen -Dieses Kapitel ist direkter Input für den Modultestplan (eigenständiges Dokument *Modultestplan_GruppeA.md*). Datentypen werden +Dieses Kapitel ist direkter Input für den Modultestplan (eigenständiges Dokument *Modultestplan.md*). Datentypen werden bereits als Java-Typen angegeben. ### 6.1 Datenobjekte und Datentypen @@ -369,7 +369,7 @@ exportieren (Q-08). **Interne Schnittstellen:** Die Schnittstellen werden hier **fachlich** beschrieben (Zweck, ausgetauschte Daten, Richtung); konkrete Methodensignaturen -und Datentypen sind dem Komponentenentwurf bzw. dem Modultestplan (eigenständiges Dokument *Modultestplan_GruppeA.md*) vorbehalten. +und Datentypen sind dem Komponentenentwurf bzw. dem Modultestplan (eigenständiges Dokument *Modultestplan.md*) vorbehalten. *Genutzte Schnittstellen (Komponente A ruft auf):*