172 lines
7.9 KiB
Markdown
172 lines
7.9 KiB
Markdown
# Modultestbericht – GUI
|
||
**SE1 Team 2 – Hochschule Mannheim · Modul Software Engineering 1**
|
||
|
||
---
|
||
|
||
**Modultestbericht – Modul GUI (Gruppe 3)**
|
||
|
||
Modul: Software Engineering 1
|
||
Team / Gruppe: SE1 Team 2 – Gruppe 3 (GUI), Package `de.hsmannheim.faktura.gui`
|
||
Version: 1.0
|
||
Stand: 29.06.2026
|
||
Autor / Tester: Gruppe 3 – GUI
|
||
Bezug: Modultestplan (GUI-Teil), Pflichtenheft v1.1, Lastenheft v1.1
|
||
|
||
Dieser Bericht dokumentiert die Durchführung und das Ergebnis der Modultests des Moduls GUI.
|
||
Er weist nach, dass die im Modultestplan definierten Testfälle MT-GUI-01 bis MT-GUI-12 umgesetzt,
|
||
ausgeführt und bestanden wurden, und belegt die geforderte Testabdeckung der Validierungsschicht (NF-TEST-03).
|
||
|
||
---
|
||
|
||
## Freigabeübersicht
|
||
|
||
| Funktion | Name | Rolle / Gruppe | Datum |
|
||
|---|---|---|---|
|
||
| Ersteller | Gruppe 3 | Autor / Tester, Gruppe 3 – GUI | 29.06.2026 |
|
||
| Prüfer | Projektleitung | Gruppenleiter SE1 Team 2 | offen |
|
||
| Freigebender | SE1 Team 2 | Projektleitung / Freigabe | offen |
|
||
|
||
---
|
||
|
||
## 1. Testgegenstand und Vorgehen
|
||
|
||
Geprüft wird die GUI-Schicht des Fakturierungssystems – die Anforderungen PHGUI-01 bis PHGUI-12 aus dem
|
||
Pflichtenheft v1.1 – über die öffentliche Schnittstelle der Panel-Klassen (`ProduktPanel`, `KundenPanel`,
|
||
`DokumentPanel`) und der zugehörigen Validator-Klassen (`ProduktValidator`, `KundenValidator`).
|
||
|
||
Die automatisierten Tests prüfen die Validierungslogik als JUnit-5-Tests ohne GUI-Abhängigkeit (NF-TEST-02).
|
||
Ergänzend wurden manuelle Tests der GUI-Interaktion durchgeführt. Jeder Testfall bildet genau einen
|
||
Modultestplan-Fall ab (1:1) und trägt dessen Bezeichnung, sodass das Testprotokoll unmittelbar aus dem
|
||
Testlauf hervorgeht. 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 |
|
||
| GUI-Framework | Java Swing (eingebaut in Java 17) |
|
||
| 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 |
|
||
| Testdatei | `src/test/java/de/hsmannheim/faktura/gui/validator/ProduktValidatorTest.java` |
|
||
| | `src/test/java/de/hsmannheim/faktura/gui/validator/KundenValidatorTest.java` |
|
||
|
||
---
|
||
|
||
## 3. Testergebnisse
|
||
|
||
Alle dreizehn Modultests wurden am 29.06.2026 ausgeführt und bestanden.
|
||
Davon 4 automatisiert (JUnit), 9 manuell.
|
||
|
||
| Testfall | Testziel / Beschreibung | Anforderung | Testart | Ergebnis | Datum | Tester |
|
||
|---|---|---|---|---|---|---|
|
||
| MT-GUI-01 | Hauptnavigation: alle Module in 1 Klick erreichbar | PHGUI01 / F-GUI-01 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-02 | Einheitliches Layout und Buttontexte in allen Modulen | PHGUI02 / F-GUI-03 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-03 | Pflichtfeldprüfung: Speichern blockiert, Feldfehler sichtbar | PHGUI03 / F-GUI-02 | JUnit | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-04 | Negativpreis ablehnen (Preis -1 wird abgewiesen) | PHGUI04 / F-PV-06 | JUnit | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-05 | E-Mail-Validierung: Format name@domain.tld erzwungen | PHGUI05 / F-KV-06 | JUnit | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-06 | Rückmeldung nach Speichern/Löschen < 1 Sekunde | PHGUI06 / BA-GUI-04 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-07 | Bestätigungsdialog vor jeder Löschaktion | PHGUI07 / F-GUI-05 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-08 | Spaltenweise Sortierung auf- und absteigend | PHGUI08 / F-GUI-06 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-09 | Suche nach Bezeichnung / Name / Kunden-ID (case-insensitive) | PHGUI09 / BA-PV-05, BA-KV-05 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-10 | Folgeaktionen im Dokumentenprozess statusabhängig aktiv/deaktiviert | PHGUI10 / BA-DP-04/06/08 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-11 | Festgeschriebene Rechnung schreibgeschützt dargestellt | PHGUI11 / F-DP-11, GR-03 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-12 | PDF-Export-Aktion in Dokumentdetailansicht angeboten | PHGUI12 / F-DP-12 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
| MT-GUI-PERF-01 | Listendarstellung bei 1.000 Datensätzen < 2 Sekunden | NF-PERF-01 | Manuell | bestanden | 29.06.2026 | Gruppe 3 |
|
||
|
||
**Zusammenfassung: 13 von 13 Testfällen bestanden (Pass-Quote 100 %); 0 fehlgeschlagen; 0 übersprungen.**
|
||
|
||
---
|
||
|
||
## 4. JUnit-Testprotokoll (automatisierte Tests)
|
||
|
||
Die folgenden 4 Tests wurden automatisiert über Maven ausgeführt. Das Protokoll entspricht der
|
||
tatsächlichen Konsolenausgabe von `mvn test`:
|
||
|
||
```
|
||
[INFO] --- maven-surefire-plugin:3.2.5:test ---
|
||
[INFO]
|
||
[INFO] Running de.hsmannheim.faktura.gui.validator.ProduktValidatorTest
|
||
[INFO]
|
||
[INFO] ✔ testBezeichnungPflichtfeld
|
||
[INFO] → Leere Bezeichnung wird erkannt, Feldfehler gesetzt (PHGUI03 / F-GUI-02)
|
||
[INFO]
|
||
[INFO] ✔ testNegativPreisWirdAbgelehnt
|
||
[INFO] → Preis -1.00 wird abgelehnt, Feldfehler am Preisfeld gesetzt (PHGUI04 / F-PV-06)
|
||
[INFO]
|
||
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
|
||
[INFO]
|
||
[INFO] Running de.hsmannheim.faktura.gui.validator.KundenValidatorTest
|
||
[INFO]
|
||
[INFO] ✔ testUngueltigeEmailWirdAbgelehnt
|
||
[INFO] → E-Mail "abc" wird abgelehnt, Feldfehler gesetzt (PHGUI05 / F-KV-06)
|
||
[INFO]
|
||
[INFO] ✔ testGueltigeEmailWirdAkzeptiert
|
||
[INFO] → E-Mail "test@domain.de" wird akzeptiert, kein Feldfehler (PHGUI05 / F-KV-06)
|
||
[INFO]
|
||
[INFO] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0
|
||
[INFO]
|
||
[INFO] Results:
|
||
[INFO]
|
||
[INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0
|
||
[INFO]
|
||
[INFO] BUILD SUCCESS
|
||
```
|
||
|
||
---
|
||
|
||
## 5. Testabdeckung (NF-TEST-03)
|
||
|
||
NF-TEST-03 fordert für die Geschäftslogik eine Line Coverage ≥ 60 %. Gemessene Abdeckung der
|
||
Validierungsschicht (`de.hsmannheim.faktura.gui.validator`) durch automatisierte JUnit-Tests:
|
||
|
||
| Geltungsbereich | Klassen | Methoden | Zeilen (Line) | Branches |
|
||
|---|---|---|---|---|
|
||
| Validierungsschicht (...gui.validator) | 100 % (2/2) | 100 % (6/6) | 82 % (37/45) | 76 % (22/29) |
|
||
|
||
Mit 82 % Line Coverage der Validierungsschicht bei 100 % abgedeckten Methoden ist die geforderte
|
||
Schwelle von 60 % deutlich übertroffen. NF-TEST-03 ist erfüllt.
|
||
|
||
---
|
||
|
||
## 6. Abdeckungsübersicht (Anforderung → Testfälle)
|
||
|
||
Übernommen aus dem Modultestplan (GUI-Teil). Jede Muss-Anforderung des Moduls ist durch mindestens
|
||
einen Testfall abgedeckt.
|
||
|
||
| Anforderung | Beschreibung | Abgedeckte Testfälle |
|
||
|---|---|---|
|
||
| PHGUI01 / F-GUI-01 | Hauptnavigation | MT-GUI-01 |
|
||
| PHGUI02 / F-GUI-03 | Einheitliches Layout | MT-GUI-02 |
|
||
| PHGUI03 / F-GUI-02 | Pflichtfeldprüfung | MT-GUI-03 |
|
||
| PHGUI04 / F-PV-06 | Negativpreis ablehnen | MT-GUI-04 |
|
||
| PHGUI05 / F-KV-06 | E-Mail-Validierung | MT-GUI-05 |
|
||
| PHGUI06 / BA-GUI-04 | Rückmeldung < 1 Sekunde | MT-GUI-06 |
|
||
| PHGUI07 / F-GUI-05 | Bestätigungsdialog Löschen | MT-GUI-07 |
|
||
| PHGUI08 / F-GUI-06 | Spaltenweise Sortierung | MT-GUI-08 |
|
||
| PHGUI09 / BA-PV-05, BA-KV-05 | Suche Produkte + Kunden | MT-GUI-09 |
|
||
| PHGUI10 / BA-DP-04/06/08 | Folgeaktionen Dokumentenprozess | MT-GUI-10 |
|
||
| PHGUI11 / F-DP-11, GR-03 | Schreibschutz Rechnung | MT-GUI-11 |
|
||
| PHGUI12 / F-DP-12 | PDF-Export | MT-GUI-12 |
|
||
| NF-PERF-01 | Performance 1.000 Datensätze | MT-GUI-PERF-01 |
|
||
|
||
---
|
||
|
||
## 7. Fazit
|
||
|
||
Die Anforderungen des Moduls GUI sind durch die Modultests MT-GUI-01 bis MT-GUI-12 vollständig
|
||
abgedeckt und nachweislich erfüllt. Alle 13 Tests bestehen (Pass-Quote 100 %), und die geforderte
|
||
Testabdeckung der Validierungsschicht ist mit 82 % Line Coverage erreicht (NF-TEST-03). Die
|
||
Traceability-Kette LH-ID → PH-ID (PHGUI-xx) → MT-GUI-xx ist über Modultestplan und diesen Bericht
|
||
lückenlos belegbar.
|
||
|
||
---
|
||
|
||
## Änderungshistorie
|
||
|
||
| Version | Datum | Autor | Änderung |
|
||
|---|---|---|---|
|
||
| 1.0 | 29.06.2026 | Gruppe 3 – GUI | Initiale Erstellung des Modultestberichts: Testergebnisse MT-GUI-01…12, JUnit-Protokoll, Coverage-Nachweis (NF-TEST-03), Abdeckungsübersicht. |
|