Testpyramide und Quality Gates

Echte Assertions statt grüner Platzhalter

Die Teststrategie trennt schnelle Unit Tests, Datenbank-Integration, Characterization, Acceptance und optionale Plattformtests. Das Coverage-Ziel ist in Legacy und moderner Runtime als Maven-Verify-Gate verankert.

Unit

Fachliche Verzweigungen

Alle sechs Monster-Workflows, ACL, Domain, Batch, Router, Comparison, Adapter und Outbox Lifecycle.

IT

Persistenz

Autoritatives Legacy-Schema mit H2 sowie moderne JPA-/Outbox-Persistenz.

GM

Golden Master

Reviewbare Snapshots und Schema-Verträge.

Testarten
EbeneBeispieleZweck
Unit*MonsterBeanTest, DomainModelTest, OutboxPublisherTestRegeln, Branches, Fehler und Interaktionen
IntegrationLegacySchemaIT, OrderPersistenceITSQL, Tabellen, Repository und Claim Query
CharacterizationGoldenMasterCharacterizationTestBeobachtetes Legacy-Verhalten einfrieren
AcceptanceLegacyOrderAcceptanceTest, OrderApiAcceptanceTestBusiness Key, Status und exakte Cent-Beträge
DeploymentCompose Healthchecks, K8s/OpenShift ProbesLauffähigkeit und Betriebsfähigkeit
Coverage Gate
./mvnw clean verify -Pall-tests

JaCoCo prüft mindestens 0,80 Line Coverage. Entities und reine Transport-DTOs sind im Legacy-Modul ausgeschlossen; die geschäftliche und technische Logik bleibt im Gate. Ein fehlgeschlagenes Gate beendet verify mit Fehler.

Ehrlicher Prüfstatus: In dieser Bearbeitungsumgebung war kein externer Maven-Download möglich. Sämtliche produktiven Java-Quellen wurden jedoch mit Java 21 statisch kompiliert. Der vollständige JaCoCo-Wert muss mit dem enthaltenen Bootstrap auf einem Rechner mit Erstzugriff auf Maven Central erzeugt werden.
Keine Placebo-Tests

Eine Projektprüfung sucht explizit nach assertTrue(true), leeren Testmethoden und dem früheren Outbox-Kommentar. Der erwartete Wert ist null.

⌂ Cockpit