Seminar / Training
Die Schulung baut eine reproduzierbare TF-A-Teststrategie auf. QEMU, Fixed Virtual Platforms und reale Boards werden nach Aussagekraft eingesetzt; Unit- und Hosttests, Test-Payloads, TF-A Tests, Bootmatrizen, Power-Management- und Sicherheitsprüfungen werden automatisiert und in auswertbare Ergebnisse überführt.
Inhaltsübersicht
- Teststrategie und Abdeckungsmodell
- Reproduzierbare Builds und Testartefakte
- QEMU als schnelle Prüfumgebung
- FVP für Architektur- und RAS-Funktionen
- TF-A Tests und Test-Payloads
- Boot- und Image-Matrix
- Power- und Multicore-Tests
- Sicherheits- und Negativtests
- Fehlertriage und Reproduktion
- Automatisierung und Bericht
Lernziele
- Testebenen und Ausführungsumgebungen nach Risiko und Aussagekraft auswählen.
- QEMU- und FVP-Boots reproduzierbar konfigurieren und automatisiert auswerten.
- TF-A Tests beziehungsweise geeignete Test-Payloads bauen und ausführen.
- Boot-, Runtime-, PSCI-, Sicherheits- und Negativtests in einer Testmatrix verbinden.
- Fehlschläge mit Artefakten, Logs und reproduzierbaren Minimalfällen diagnostizieren.
Seminarinhalte
1. Teststrategie und Abdeckungsmodell
- Schritt 1: Architektur-, Plattform-, Sicherheits- und Betriebsanforderungen werden in prüfbare Aussagen überführt.
- Schritt 2: Hosttest, Modelltest und Hardwaretest erhalten jeweils klare Ziele und Grenzen.
- Schritt 3: Risiko und Änderungsumfang bestimmen Priorität und Wiederholungsfrequenz.
Praxis: Eine mehrstufige Testpyramide für ein TF-A-Produkt wird entworfen.
2. Reproduzierbare Builds und Testartefakte
- Schritt 1: Toolchain, Konfiguration, Commitstand und Payloads werden in einem Testmanifest festgehalten.
- Schritt 2: Buildausgaben werden mit eindeutigen Namen, Prüfsummen und Symbolinformationen archiviert.
- Schritt 3: Test und Produktbuild unterscheiden sich nur durch bewusst dokumentierte Optionen.
Praxis: Ein vollständiges Testartefaktpaket wird erzeugt und auf einem zweiten Arbeitsplatz reproduziert.
3. QEMU als schnelle Prüfumgebung
- Schritt 1: Maschine, CPU, Speicher, Firmwarepfad und serielle Ausgabe werden fest definiert.
- Schritt 2: Timeout, Exitcode und erwartete Logmarken werden maschinell ausgewertet.
- Schritt 3: Grenzen der Emulation werden dokumentiert, damit Erfolge nicht überinterpretiert werden.
Praxis: Mehrere QEMU-Bootvarianten werden per Skript ausgeführt und bewertet.
4. FVP für Architektur- und RAS-Funktionen
- Schritt 1: Modellparameter, Pluginstände und Plattformkonfiguration werden versioniert.
- Schritt 2: Trace, Breakpoints und modellbasierte Fehlerfunktionen werden gezielt eingesetzt.
- Schritt 3: Modellunterschiede zur Zielhardware werden in der Ergebnisbewertung berücksichtigt.
Praxis: Ein FVP-Boot wird mit Trace aufgezeichnet und ein definierter Fehler injiziert.
5. TF-A Tests und Test-Payloads
- Schritt 1: Testframework und Payload werden mit zur Firmware passenden Schnittstellen gebaut.
- Schritt 2: Testgruppen werden nach PSCI, Runtime Services, Interrupts und Plattformfunktionen ausgewählt.
- Schritt 3: Ergebnisse werden aus Konsolenprotokollen strukturiert extrahiert.
Praxis: Eine Test-Suite wird gebaut, gestartet und in einen maschinenlesbaren Bericht überführt.
6. Boot- und Image-Matrix
- Schritt 1: Cold Boot, Warm Boot, alternative BL32/BL33-Payloads und mehrere Konfigurationen werden kombiniert.
- Schritt 2: Fehlende, beschädigte und inkompatible Images bilden eigene Negativfälle.
- Schritt 3: Jede Variante besitzt eindeutige erwartete Übergabepunkte und Endzustände.
Praxis: Eine Bootmatrix wird automatisiert ausgeführt und auf unerwartete Pfade geprüft.
7. Power- und Multicore-Tests
- Schritt 1: CPU_ON/OFF, Suspend, System Suspend und Reset werden über Wiederholungsschleifen belastet.
- Schritt 2: Parallelität und wechselnde Kernreihenfolgen provozieren Race Conditions.
- Schritt 3: Hardwarezustand und PSCI-Ergebnis werden gemeinsam bewertet.
Praxis: Ein mehrstündiger verkürzter Stresstest wird mit Fehlergrenzen und Logrotation eingerichtet.
8. Sicherheits- und Negativtests
- Schritt 1: Authentisierungsfehler, ungültige Pointer, falsche Größen und unzulässige Zustände werden injiziert.
- Schritt 2: Kontrollierter Abbruch und Informationsminimierung werden als Erfolgskriterien definiert.
- Schritt 3: Tests prüfen auch, dass Recovery oder Debug keine Vertrauensabsenkung erlauben.
Praxis: Eine Negativtestreihe für Boot und Runtime Service wird durchgeführt.
9. Fehlertriage und Reproduktion
- Schritt 1: Fehlschläge werden nach Build, Modell, Plattform, Timing und Testfehler klassifiziert.
- Schritt 2: Ein Minimalfall reduziert Varianten und erhält alle notwendigen Artefakte.
- Schritt 3: Regressionstest und Fehlerreferenz werden nach der Korrektur dauerhaft ergänzt.
Praxis: Ein instabiler Test wird reproduziert, minimiert und als Regressionstest fixiert.
10. Automatisierung und Bericht
- Schritt 1: Build-, Start-, Timeout- und Auswertungsschritte werden als idempotente Pipeline umgesetzt.
- Schritt 2: Berichte zeigen Plattform, Konfiguration, Testgruppe und Abweichung ohne manuelle Nacharbeit.
- Schritt 3: Freigabegates unterscheiden Pflicht-, Quarantäne- und Informationstests.
Praxis: Eine lokale End-to-End-Testpipeline erzeugt einen Freigabebericht.
Zielgruppe
Firmware-Entwickler, Test- und CI-Teams, BSP-Integratoren, Plattformverantwortliche und Security-Tester für Arm-Firmware.
Voraussetzungen
TF-A-Build- und Bootkenntnisse, Linux-Shell oder Python, Grundlagen zu QEMU oder FVP sowie Verständnis von Testautomatisierung und Fehleranalyse.
Praxisumgebung
Linux-Arbeitsplatz mit TF-A, AArch64-Toolchain, QEMU, FVP oder vergleichbarem Modell, Test-Payloads, Skriptumgebung und Debugwerkzeugen.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Firmware-Entwickler, Test- und CI-Teams, BSP-Integratoren, Plattformverantwortliche und Security-Tester für Arm-Firmware. |
| Voraussetzungen: | TF-A-Build- und Bootkenntnisse, Linux-Shell oder Python, Grundlagen zu QEMU oder FVP sowie Verständnis von Testautomatisierung und Fehleranalyse. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Quellcodeanalyse, Demonstrationen, praktische Übungen am System und kontrollierte Fehlerfälle |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
