56 lines
3.2 KiB
Markdown
56 lines
3.2 KiB
Markdown
# TEST REPORT
|
||
|
||
Testberichte gemäß PLAN.md §32. Jeder Eintrag: Testdatum, Commit, Hardware/OS/Treiber, Ergebnisse, offene Abweichungen.
|
||
|
||
## Automatisierte Tests (Entwicklungsumgebung)
|
||
|
||
| Datum | Commit | Plattform | Ergebnis |
|
||
| --- | --- | --- | --- |
|
||
| 2026-09-11 | 0922cc1 (initiale Phase-0-Grundlage) | Kali-Linux-Container, Python 3.13.14, uv, CPU-only | **121 passed** (Unit + Integration), Ruff 0 Fehler |
|
||
|
||
Testumfang und Ergebnis der Phase-0-Grundlage (alle grün):
|
||
|
||
- `tests/unit/test_protocol.py` – IPC-Envelope, length-prefixed MessagePack-Framing, Idempotenz (10 Tests)
|
||
- `tests/unit/test_parameter_engine.py` – Prioritäten, LTP/HTP, Release, Frame-Snapshot, Revision-Konflikt (11 Tests)
|
||
- `tests/unit/test_artnet_packets.py` – ArtDMX/ArtPoll/ArtPollReply gegen offizielle Spezifikation (22 Tests)
|
||
- `tests/unit/test_adaptive_quality.py` – Hysterese, eine Stufe je Intervall, Mindesthaltezeit, kein Pumpen (8 Tests)
|
||
- `tests/unit/test_plugin_manifest.py` – Manifest-/ZIP-Validierung, Pfadsicherheit, DMX-Slot-Limit (16 Tests)
|
||
- `tests/unit/test_domain_ids.py` – stabile Node-ID ohne IP/Hostname-Abhängigkeit (6 Tests)
|
||
- `tests/unit/test_fixture_generator.py` – Master32/Layer64-Kanallisten (8 Tests)
|
||
- `tests/unit/test_pipelines.py` – Renderer-Pipeline-Definitionen D3D11/Dev-GL (7 Tests)
|
||
- `tests/unit/test_dmx_mapping.py` – RisingEdge, 16-Bit-Decoder, Signalverlust-Policies, CONSOLE-Priorität (10 Tests)
|
||
- `tests/unit/test_capabilities.py` – Tier-Vergabe nur nach Messwerten, kein Fake (6 Tests)
|
||
- `tests/unit/test_portable_paths.py` – portable Pfade, GStreamer-Environment (5 Tests)
|
||
- `tests/integration/test_control_server.py` – REST-Health, Commands, Revision-Konflikt, Idempotenz, WebSocket (12 Tests)
|
||
- `tests/integration/test_artnet_receiver.py` – echter Loopback-UDP-Empfang, ArtPollReply als Media Server, Allowlist (3 Tests)
|
||
|
||
Werkzeug-Rauchtests: Fixture-CSVs (32/64 Kanäle, 8×64=512) generiert;
|
||
Renderer-Dry-Run gibt korrekte D3D11-Pipeline aus; alle JSON-Schemas und
|
||
Plugin-Manifeste parsebar; Plugin-Validierung der Beispielplugins fehlerfrei.
|
||
|
||
## Performancewerte (Gate-0-Messungen)
|
||
|
||
**Status: ausstehend.** Gate-0-Messungen sind ausschließlich auf Referenz-Windows-Hardware gültig (PLAN.md §29.7, §33). Zu messen:
|
||
|
||
- D3D11-Hardwaredecode aktiv (kein Software-Decoder) für H.264-Testclip
|
||
- GPU-Residenz: `D3D11Memory` von Decoder bis `d3d11videosink` ohne regulären CPU-Rundweg
|
||
- Framezeit p50/p95/p99 bei 1080p60 (Mini-PC) und 4K60 (`DESKTOP_FULL`)
|
||
- DMX→sichtbarer Frame: p95 ≤ 2 Frames
|
||
- Adaptive-Quality-Wechsel (3 Blur-Stufen) atomar ohne Semantikänderung/Stall
|
||
|
||
## Art-Net-Hardwaretest
|
||
|
||
Ausstehend – Emulator (`tools/artnet_emulator`) bereit; Test gegen echtes Lichtpult in Phase 4 (Gate 4).
|
||
|
||
## Portabilitätstest
|
||
|
||
Ausstehend – saubere Windows-VM ohne Python/Node/GStreamer, kein Admin (PLAN.md §29.6). Onefolder-Build nach Packaging-ADR (ADR-0005).
|
||
|
||
## Soak-Zeit
|
||
|
||
Ausstehend – 4 h Desktop / 2 h Pi gemäß §25.1–25.3.
|
||
|
||
## Offene Abweichungen
|
||
|
||
- Entwicklungsumgebung ist ein CPU-only-Linux-Container: keine D3D11-, Display- oder Art-Net-Hardwaremessung möglich. Kein Ergebnis in diesem Report darf als Hardwarenachweis gewertet werden.
|