Communitygithub.com

Embedded QA (deutsch)

Entwerfen, implementieren und ausführen von eingebetteten Firmware-Verifikationen über Host/Mocks, statische Analyse, Renode- oder QEMU-Simulation, Hardware-in-the-Loop, J‑Link/ST‑Link/OpenOCD, UART/RTT und physikalische Messungen. Geeignet für Teststrategien, Regression, Fehlerinjektion, Akzeptanzgates, Timing-/Stack-/Ressourcennachweise und CI-Testautomatisierung auf Bare-Metal-, RTOS- und Embedded-Linux-Zielen.

Was ist Embedded QA (deutsch)?

Diese Fertigkeit (Embedded QA) liefert evidenzbasierte, reproduzierbare Tests für eingebettete Firmware, ohne Fähigkeiten zu beanspruchen, die die Testumgebung nicht nachweisen kann. Sie hilft dem Benutzer (z. B. Claude Code), den geeigneten Backend auszuwählen: Hosttests für portable Zustandsautomaten, Renode/QEMU für CPU- und Peripheriemodellierung, und echte Board- oder Probemessungen für elektrische, Timing- und DMA/Cache-Aspekte. Der Arbeitsablauf umfasst Inspektion der Zielhardware, Definition des Testorakels unabhängig von der Implementierung, Auswahl des günstigsten Backends, Ausführung mit Protokollierung aller Metadaten, Berichterstattung nach Evidenzstufen (Host/Simulation/HIL/physikalisch) und Nachverfolgung mit kürzestmöglicher Reproduktion der Fehler. Die Fertigkeit unterstützt gängige Plattformen wie J‑Link, ST‑Link, OpenOCD, UART und RTT und enthält Verweise auf spezifische Referenzdokumente für Host-Testing, Renode-Workflow, Simulationsabdeckung und HIL-Testing.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/brunofbloq/embedded-agent-skills/tree/HEAD/skills/embedded-qa

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Embedded QA (Qualitätssicherung für eingebettete Systeme)

Liefern Sie evidenzbasierte, reproduzierbare Tests, ohne Fähigkeiten zu beanspruchen, die die Testumgebung nicht nachweisen kann. Wählen Sie ein oder mehrere Backends, die zur jeweiligen Funktion und ihren Fehlermodi passen, nicht eine vorgeschriebene Testpyramide für jede Änderung.

Testablauf

  1. Inspizieren: Identifizieren Sie das tatsächliche Firmware-Ziel, die Board-/Siliziumrevision, die Toolchain, die vorhandene Testinfrastruktur, Anforderungen, Sicherheits-/Leistungs-/Timing-Einschränkungen, Build-Artefakte und verfügbare Host-/Emulator-/Probe-Hardware. Nutzen Sie vorhandene Tests und Werkzeuge, bevor Sie ein neues Framework einführen.
  2. Definieren Sie das Testorakel unabhängig: Übersetzen Sie Anforderungen in beobachtbare positive, negative, Grenzwert-, Fehler- und Wiederherstellungs-Erwartungen. Überprüfen Sie erwartete Werte anhand von Spezifikationen und Testvektoren, anstatt blind Implementierungsergebnisse nachzubilden.
  3. Wählen Sie das günstigste vertrauenswürdige Backend: Testen Sie portable Zustandsautomaten und Protokolle auf dem Host. Verwenden Sie Renode nur, wenn dessen CPU-, Interrupt-, Speicher- und Peripheriemodellierung für jede Behauptung ausreichend ist; markieren Sie andernfalls BLOCKED_BY_MODEL und verwenden Sie Mocks, Modellarbeit oder HIL. Verwenden Sie echte Board-/Probenmessungen für elektrisches Verhalten, Leistung, DMA/Cache, Timing und Reset-Verhalten.
  4. Erstellen und ausführen: Erfassen Sie genaues Firmware-Image/Revision, Modellversion, Skripte, Stimuli, Exit-Status und begrenzte Timeouts. Führen Sie gezielte Prüfungen vor umfassender Regression durch. Isolieren Sie Testressourcen, Portnummern und Bereinigung; flashen/löschen Sie niemals echte Hardware ohne Autorisierung.
  5. Berichten nach Evidenzstufe: Host, statisch, simuliert, HIL und physikalische Messung erhalten jeweils ein eigenes PASS/FAIL/NOT_RUN/INCOMPLETE-Ergebnis. Markieren Sie fehlende Modellabdeckung und Testabdeckung getrennt. Bewahren Sie nützliche maschinenlesbare Protokolle, keine ausführlichen Transkripte im LLM-Kontext.
  6. Nachverfolgen: Liefern Sie die kürzeste reproduzierbare Fehlerreproduktion, Ursachennachweise oder Umfangseinschränkungen. Fügen Sie stabile Tests zusammen mit Korrekturen hinzu, falls angemessen.

Bedingte Referenzen

Verwenden Sie scripts/summarize_robot.py, um Robot output.xml (falls erstellt) zusammenzufassen. Erfinden Sie keine Renode-MCP-Integrationen: Überprüfen Sie einen tatsächlich installierten Adapter, bevor Sie sich darauf verlassen. Schützen Sie gemeinsam genutzte Debug-Probes, UART-Sockets und Leistungsgeräte vor gleichzeitigen Tests.

Liefern: Testumgebung und Einschränkungen; ausgeführte Befehle; Behauptungen/Ergebnisse mit Nachweisort; simulierte gegenüber physikalischer Abdeckung; verbleibende Risiken.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Verwandte Skills