Repository navigation
Testleitfaden
Diese Seite beschreibt, welche Teststufe fuer welche Aenderung sinnvoll ist.
Vor einem Commit ausfuehren:
make check
git diff --checkmake check prueft Lint-Konfiguration, fuehrt Lint aus, erzwingt Repo-Policy,
validiert paketierte Config-/Profil-YAMLs und startet go test ./....
Ausfuehren, wenn Adoption, Inform, Payload-Shape, Profile oder Controller- Kompatibilitaet geaendert wurden:
make integration-dockerDas Docker-Lab ist der Referenz-Controller-Pfad. Es validiert den gepinnten UniFi-Network-Application-Container, Pending Adoption, controller-getriggerte Adoption, persistierten lokalen State und ausgewaehlte Dry-Run-Payloads.
Ausfuehren, wenn paketierte Configs, Service-Dateien, Filesystem-Pfade oder Release-Metadaten geaendert wurden:
make package
make package-freebsd-tgzPaketinhalte nur inspizieren, ausser der Test verlangt explizit eine temporaere Installation. Permanente Service-Aktivierung gehoert nicht in einen Package- Smoke-Test.
Nutzen fuer bridge-observe-Verhalten, das Docker nicht beweisen kann:
Topologie-Richtung, physische Uplinks, SFP-/SFP+-Platzierung und Interaktion
mit echten Upstream-UniFi-Switches.
Read-only Preflight:
ip link show
bridge fdb show br <bridge>
cat /sys/class/net/<iface>/speed
cat /proc/net/devDanach temporaeren Dry-Run oder einen kontrollierten Controller-Test mit disposable MAC/State ausfuehren.
Nutzen fuer FreeBSD-Parsing und Runtime-Smoke-Tests. Nicht permanent installieren.
Read-only Preflight:
ifconfig
ifconfig <bridge> addr
tail /var/log/messagesTemporaere Extraktion und temporaere State-Pfade nutzen. Fehlende Tools werden als skipped dokumentiert und nicht waehrend dieses Gates installiert.
Nur mit disposable MACs und explizitem Cleanup nutzen.
Checkliste:
- zuerst dry-run;
- keine echten MAC-/IP-Kollisionen;
- ein disposable Device pro Profiltest;
- Controller Forget/Remove nach dem Test;
- lokaler State-Cleanup nach Stop;
- keine Controller-Tokens, privaten URLs oder echten MACs committen.
| Test | Beweist | Beweist nicht |
|---|---|---|
go test ./... |
Unit- und Fixture-Verhalten | Live-Controller-Kompatibilitaet |
make check |
Lint, Policy, Validierung, Tests | Package-Install-Verhalten |
make integration-docker |
gepinnter Controller-Adoption-Pfad | physische Topologie-Richtung |
| Package-Builds | Artefakte sind baubar | Runtime-Korrektheit auf Zielhost |
| reale Linux-Bridge | physische Bridge-Observation | FreeBSD-Verhalten |
| realer FreeBSD-Host | FreeBSD-Runtime-Basics | Linux-Bridge-Verhalten |
| realer Controller | Adoption gegen deployed Controller | Sicherheit bei MAC-/IP-Kollisionen |
Synced from docs/wiki/de/testing-guide.md at commit 0f62253 on 2026-05-22.