diff --git a/Modultestplan.md b/Modultestplan.md index d37bc0f..10b73dc 100644 --- a/Modultestplan.md +++ b/Modultestplan.md @@ -38,7 +38,41 @@ Die folgenden Modultests prüfen die fachlichen Anforderungen des Moduls **Kunde | BA-KV-04 Kunde löschen | MT-KV-10, MT-KV-11 | | GR-05 Stammdatenschutz | MT-KV-11 | | NF-ARCH-01 Persistenz | MT-KV-06


| -# Produktverwaltung + +# Produktverwaltung + +Die folgenden Modultests prüfen die fachlichen und systemtechnischen Anforderungen des Moduls **Produktverwaltung**. Die Testfälle sind so formuliert, dass sie ohne GUI-Abhängigkeiten als automatisierte JUnit-Tests direkt gegen die Geschäftslogik (`ProductService`) und Datenhaltung (`ProductRepository`) umgesetzt werden können. Die Zuordnung zu den Anforderungen gewährleistet die vollständige Traceability. + +## Testfälle + +| Testfall-ID | Testziel / Beschreibung | Vorbedingungen | Testschritte | Erwartetes Ergebnis | Abgedeckte Anforderungen | +| ----------- | ------------------------------------------------- | -------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------ | +| MT-PV-01 | Produkt mit vollständigen Pflichtattributen anlegen | Kein Produkt mit derselben ID vorhanden | Produktobjekt mit Produkt-ID, Bezeichnung, Netto-Einzelpreis und Mehrwertsteuersatz anlegen und speichern | Produkt wird erfolgreich in der Liste erfasst und persistent gespeichert | F-SH-PV-01 | +| MT-PV-02 | Produkt ohne Bezeichnung anlegen | System betriebsbereit | Produktobjekt ohne Bezeichnung speichern | Speicherung wird abgelehnt, eine Fehlermeldung wird erzeugt | F-SH-PV-01 | +| MT-PV-03 | Produkt ohne Netto-Einzelpreis anlegen | System betriebsbereit | Produktobjekt ohne Preisangabe speichern | Speicherung wird abgelehnt, eine Fehlermeldung wird erzeugt | F-SH-PV-01 | +| MT-PV-04 | Produkt mit negativem Preis ablehnen | System betriebsbereit | Produktobjekt mit einem Preis kleiner als 0,00 Euro speichern | Speicherung wird blockiert, eine Fehlermeldung wird erzeugt | F-SH-PV-06 | +| MT-PV-05 | Produkt mit Preis von exakt Null Euro anlegen | System betriebsbereit | Produktobjekt mit einem Preis von exakt 0,00 Euro speichern | Speicherung wird akzeptiert, das Produkt wird angelegt | F-SH-PV-06 | +| MT-PV-06 | Bestehende Produktattribute bearbeiten | Produkt existiert bereits im System | Werte für Bezeichnung, Beschreibung oder Kategorie ändern und speichern | Geänderte Attribute werden übernommen und aktualisiert angezeigt | F-SH-PV-02 | +| MT-PV-07 | Validierung der maximalen Beschreibungslänge | Produkt existiert bereits im System | Beschreibung mit einer Länge von mehr als 500 Zeichen füllen und speichern | Speicherung wird wegen Überschreitung der Zeichengrenze abgewiesen | F-SH-PV-02 | +| MT-PV-08 | Produkt über die Bezeichnung suchen | Produkte „Schraube M6“ und „SCHRAUBE M8“ vorhanden | Suche mit dem Suchbegriff „schraube“ ausführen | Beide Produkte werden unabhängig von Groß-/Kleinschreibung im Suchergebnis zurückgegeben | F-SH-PV-05 | +| MT-PV-09 | Produktsuche ohne Treffer ausführen | Gesuchtes Produkt existiert nicht im System | Suche mit einem unbekannten Begriff durchführen | Ein leeres Suchergebnis wird zurückgegeben | F-SH-PV-05 | +| MT-PV-10 | Nicht referenziertes Produkt erfolgreich löschen | Produkt existiert und wird in keinem Beleg verwendet | Löschvorgang für die Produkt-ID ausführen und anschließend Suche starten | Produkt wird gelöscht und kann nicht mehr gefunden werden | F-SH-PV-03 | +| MT-PV-11 | Referenziertes Produkt gegen Löschung sperren | Produkt wird in Angebot, Auftragsbestätigung, Lieferschein oder Rechnung verwendet | Löschvorgang für die Produkt-ID ausführen | Löschung wird abgewiesen, Produkt bleibt unverändert im System erhalten | F-SH-PV-03, GR-05 | +| MT-PV-12 | Persistenz der Produktstammdaten nach Neustart prüfen | System betriebsbereit | Ein Produkt anlegen, speichern und die Daten erneut aus der Datenhaltung laden | Daten bleiben nach dem Neuladen vollständig und unverändert erhalten | NF-SH-ARCH-01 | + +## Abdeckungsübersicht + +| Anforderung | Abgedeckte Testfälle | +| ------------------------- | --------------------- | +| F-SH-PV-01 Produkt anlegen | MT-PV-01 bis MT-PV-03 | +| F-SH-PV-02 Produkt bearbeiten | MT-PV-06, MT-PV-07 | +| F-SH-PV-03 Produkt löschen | MT-PV-10, MT-PV-11 | +| F-SH-PV-04 Übersichtsliste anzeigen | MT-PV-01 | +| F-SH-PV-05 Produktsuche | MT-PV-08, MT-PV-09 | +| F-SH-PV-06 Validierung Preisbereich | MT-PV-04, MT-PV-05 | +| GR-05 Stammdatenschutz | MT-PV-11 | +| NF-SH-ARCH-01 Persistenz (JSON) | MT-PV-12


| + # Dokumentenprozess