Integration Test Suite: Kommunikation, Sync & Messaging automatisiert testen #60
Labels
No labels
block-planning
bug
documentation
duplicate
enhancement
feature
good first issue
help wanted
infrastructure
invalid
planning
priority:high
priority:low
question
refactoring
status:backlog
status:done
status:in-progress
status:todo
tech-decision
test
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: bollwerkadmin/bollwerk#60
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ziel
Einen wiederholbaren Integrations-Testscript erstellen, der das Kommunikationssystem (WebSocket, Inventory Sync, Messaging) automatisiert gegen einen laufenden Server testet – ohne manuellen Testclient.
Motivation
Lösungsansatz: Automatisierter Simulationsscript
Ein Kotlin/JVM-Script (oder Shell-Script mit
websocat/curl) das folgendes simuliert:Szenarien
Output
Akzeptanzkriterien
./gradlew :test:integrationTestoder./run-integration-tests.ps1localhost:8080)Technische Hinweise
:integration-testim Gradle-Projekt lebenInvoke-WebRequestundwebsocatfür WebSocket-TestsAbgrenzung
Kein dauerhaft laufender interaktiver Test-Client (zu viel Wartungsaufwand). Der Script ist ein einmaliger, wiederholbarer Durchlauf.
Testergebnis (2026-05-16)
Build & Tests: Alle Unit-Tests gruен (70 Tasks)
Integration-Tests gegen VPS (195.246.231.210:8080): 15/15 bestanden
Akzeptanzkriterien:
Szenarien:
Technische Erkenntnis: .NET ClientWebSocket bricht die Verbindung ab wenn ein CancellationToken in ReceiveAsync gefeuert wird - Task.Wait(timeout) als Alternative implementiert.