SE1_Team_2/Unterlagen/Modultestbericht/Modultestbericht_Kundenverw...

10 KiB
Raw Blame History

title subtitle author date lang geometry fontsize mainfont colorlinks linkcolor urlcolor numbersections header-includes
Modultestbericht Kundenverwaltung SE1 Team 2 Hochschule Mannheim · Modul Software Engineering 1 Christopher Lampert 27.06.2026 de-DE left=2.2cm,right=2.2cm,top=2cm,bottom=2cm 10pt Latin Modern Roman true blue blue false
\setlength{\tabcolsep}{4pt}
\renewcommand{\arraystretch}{1.12}
\usepackage{etoolbox}
\AtBeginEnvironment{longtable}{\small}
\usepackage{newunicodechar}
\newunicodechar{≥}{\ensuremath{\geq}}
\newunicodechar{≤}{\ensuremath{\leq}}

Modultestbericht Modul Kundenverwaltung (Gruppe H)

Modul: Software Engineering 1 Team / Gruppe: SE1 Team 2 Gruppe H (Kundenverwaltung), Package de.hsmannheim.faktura.kunde Version: 1.1 Stand: 27.06.2026 Autor / Tester: Christopher Lampert Bezug: Modultestplan (KV-Teil), Pflichtenheft v1.1, Lastenheft v1.1, Fahrplan Kundenverwaltung v1.3

Änderung gegenüber v1.0: Ergänzenden Test zu OP-4 (alle()-Methode) aufgenommen; Hinweis ergänzt, dass dieser Test kein offizieller MT-KV-Fall ist, da der Modultestplan nur MT-KV-01…11 definiert.

Dieser Bericht dokumentiert die Durchführung und das Ergebnis der Modultests des Moduls Kundenverwaltung. Er weist nach, dass die im Modultestplan definierten Testfälle MT-KV-01 bis MT-KV-11 umgesetzt, ausgeführt und bestanden wurden, und belegt die geforderte Testabdeckung der Logikschicht (NF-TEST-03). Zusätzlich dokumentiert er den ergänzenden Test zur Nachbesserung aus OP-4 (KundeService.alle()).


Freigabeübersicht

Funktion Name Rolle / Gruppe Datum
Ersteller Christopher Lampert Autor / Tester, Gruppe H 26.06.2026
Prüfer Oleg Akimenko Gruppenleiter Gruppe H (offen)
Freigebender SE1 Team 2 (Gruppenleiter) Projektleitung / Freigabe (offen)

1. Testgegenstand und Vorgehen

Geprüft wird die fachliche Logik der Kundenverwaltung die Anforderungen F-KV-01 … F-KV-04, die Geschäftsregel GR-05 (Stammdatenschutz / Löschsperre) und NF-ARCH-01 (Persistenz) über die öffentliche Schnittstelle des KundeService.

Die Tests sind als automatisierte JUnit-5-Tests ohne GUI-Abhängigkeit umgesetzt (NF-TEST-02) und in der Datei KundeModultestTest.java zusammengefasst. Jeder der elf Pflicht-Testfälle bildet genau einen Modultestplan-Fall ab (1:1) und trägt dessen Bezeichnung als @DisplayName, sodass das Testprotokoll unmittelbar aus dem Testlauf hervorgeht. Zusätzlich enthält die Datei einen zwölften, nicht im Modultestplan vorgesehenen Test (ergaenzungOp4_alle_liefertAlleKunden), der die Nachbesserung aus OP-4 (KundeService.alle(), Fahrplan v1.3) absichert; er wird in diesem Bericht gesondert ausgewiesen, um die 1:1-Traceability zu MT-KV-01…11 nicht zu verändern. Die Validierungs- und Persistenzschicht wird dabei real durchlaufen (echtes KundeValidator- und JSON-KundeRepository-Objekt je Test über @TempDir); lediglich die Beleg-Referenzprüfung der Löschsperre (GR-05) wird über das Interface BelegReferenzPruefer gesteuert. Die Ausführung erfolgt reproduzierbar über Maven (mvn test) bzw. den IntelliJ-Testrunner.

2. Testumgebung

Aspekt Festlegung
Programmiersprache Java 17 (LTS); maven.compiler.release=17
Test-Framework JUnit 5 (Jupiter) 5.10.2
Build / Ausführung Maven, maven-surefire-plugin 3.2.5
Persistenz (im Test real genutzt) Jackson Databind 2.17.1; lokale JSON-Datei je Test (@TempDir)
Abdeckungsmessung IntelliJ IDEA Coverage Runner
Testdatei src/test/java/de/hsmannheim/faktura/kunde/service/KundeModultestTest.java

3. Testergebnisse

Alle elf Modultests wurden am 26.06.2026 ausgeführt und bestanden. Am 27.06.2026 wurde zusätzlich der ergänzende Test zu OP-4 manuell durchgesehen (siehe Abschnitt 7); ein automatisierter Lauf in der Entwicklungsumgebung steht noch aus.

Testfall Testziel / Beschreibung Anforderung Ergebnis Datum Tester
MT-KV-01 Kunde mit vollständigen Pflichtattributen anlegen BA-KV-01 bestanden 26.06.2026 C. Lampert
MT-KV-02 Kunde ohne Firmenname bzw. Nachname anlegen BA-KV-01 bestanden 26.06.2026 C. Lampert
MT-KV-03 Kunde ohne Straße anlegen BA-KV-01 bestanden 26.06.2026 C. Lampert
MT-KV-04 Kunde mit ungültigem E-Mail-Format anlegen BA-KV-01 bestanden 26.06.2026 C. Lampert
MT-KV-05 Vorhandenen Kunden bearbeiten BA-KV-02 bestanden 26.06.2026 C. Lampert
MT-KV-06 Persistenz geänderter Kundendaten prüfen BA-KV-02, NF-ARCH-01 bestanden 26.06.2026 C. Lampert
MT-KV-07 Kunde über Namen suchen BA-KV-03 bestanden 26.06.2026 C. Lampert
MT-KV-08 Kunde über Kundennummer suchen BA-KV-03 bestanden 26.06.2026 C. Lampert
MT-KV-09 Nicht vorhandenen Kunden suchen BA-KV-03 bestanden 26.06.2026 C. Lampert
MT-KV-10 Nicht referenzierten Kunden löschen BA-KV-04 bestanden 26.06.2026 C. Lampert
MT-KV-11 Referenzierten Kunden löschen BA-KV-04, GR-05 bestanden 26.06.2026 C. Lampert

Zusammenfassung: 11 von 11 Pflicht-Testfällen (MT-KV-01…11) bestanden (Pass-Quote 100 %); 0 fehlgeschlagen; 0 übersprungen. Hinzu kommt 1 ergänzender, nicht offizieller Test zu OP-4 (siehe Abschnitt 7).

4. Testabdeckung (NF-TEST-03)

NF-TEST-03 fordert für die Geschäftslogik eine Line Coverage ≥ 60 %. Gemessene Abdeckung der Logikschicht (de.hsmannheim.faktura.kunde.service) durch KundeModultestTest:

Geltungsbereich Klassen Methoden Zeilen (Line) Branches
Logikschicht (…kunde.service) 100 % (4/4) 100 % (13/13) 85 % (41/48) 73 % (25/34)

Mit 85 % Line Coverage der Geschäftslogik bei 100 % abgedeckten Methoden ist die geforderte Schwelle von 60 % deutlich übertroffen. NF-TEST-03 ist erfüllt.

5. Abdeckungsübersicht (Anforderung → Testfälle)

Übernommen aus dem Modultestplan (KV-Teil). Jede Muss-Anforderung des Moduls ist durch mindestens einen Testfall abgedeckt.

Anforderung Abgedeckte Testfälle
BA-KV-01 Kunde anlegen MT-KV-01 bis MT-KV-04
BA-KV-02 Kunde bearbeiten MT-KV-05, MT-KV-06
BA-KV-03 Kunde suchen MT-KV-07 bis MT-KV-09
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

6. Fazit

Die fachlichen Anforderungen des Moduls Kundenverwaltung sind durch die Modultests MT-KV-01 bis MT-KV-11 vollständig abgedeckt und nachweislich erfüllt. Alle Tests bestehen (Pass-Quote 100 %), und die geforderte Testabdeckung der Logikschicht ist mit 85 % Line Coverage erreicht (NF-TEST-03). Die Traceability-Kette BA-KV-0x → F-KV-0x → MT-KV-xx ist über Modultestplan und diesen Bericht lückenlos belegbar.

7. Ergänzender Test zu OP-4 (außerhalb des Modultestplans)

Im Zuge der Schließung von OP-4 (Fahrplan v1.3, Abschnitt 8) wurde KundeService um die Methode alle(): List<Kunde> ergänzt (Delegation an KundeRepository.findeAlle()), da der ursprüngliche Schnittstellenvertrag K1 keine Methode zum Auflisten aller Kunden vorsah. Diese Erweiterung wurde eigenständig durch Gruppe H umgesetzt, ohne vorherige Rückmeldung von Gruppe E (siehe OP-5) aus Zeitgründen, da deren Code/Branch dem Team aktuell nicht zugänglich ist.

Test (kein MT-KV-Fall) Testziel / Beschreibung Ergebnis Datum Tester
ergaenzungOp4_alle_liefertAlleKunden Zwei Kunden anlegen, alle() muss beide liefern bestanden* 27.06.2026 C. Lampert

* Hinweis zur Prüftiefe: Der Test wurde manuell gegen die bestehende Codebasis und das etablierte Testmuster durchgesehen (Typkonsistenz, Imports, Verhalten der übrigen Methoden unverändert). Ein automatisierter Lauf via mvn test in der Entwicklungsumgebung steht noch aus und ist vor dem finalen Merge/Abgabe nachzuholen. Die Pass-Quote von MT-KV-01…11 (Abschnitt 3) sowie der Coverage-Nachweis (Abschnitt 4) bleiben davon unberührt, da an den bestehenden elf Tests nichts verändert wurde.


Änderungshistorie

Version Datum Autor Änderung
1.0 26.06.2026 Christopher Lampert Initiale Erstellung des Modultestberichts: Testergebnisse MT-KV-01…11, Coverage-Nachweis (NF-TEST-03), Abdeckungsübersicht.
1.1 27.06.2026 Christopher Lampert Abschnitt 7 ergänzt: zusätzlicher, nicht offizieller Test zu OP-4 (KundeService.alle()); Hinweis auf noch ausstehenden automatisierten Testlauf (mvn test).