Seminar Das U-Boot: Testautomatisierung mit Sandbox, pytest und CI

Einordnung

Das Seminar entwickelt eine mehrstufige Teststrategie für U-Boot. Sandbox, C-Unit-Tests, pytest-Konsole, Buildman, QEMU oder Simulation, reale Boards, Flash- und Reset-Hooks, Fehlerinduktion, Artefakte und CI-Freigaberegeln werden zu einer reproduzierbaren Qualitätssicherung verbunden.

Inhaltsübersicht

  • Testpyramide festlegen
  • Sandbox aufbauen
  • C-Unit-Tests schreiben
  • pytest-Konsole verwenden
  • Hardware-Hooks integrieren
  • Buildman und Buildmatrix einsetzen
  • Fehlerinduktion und Robustheit testen
  • CI und Freigaberegeln gestalten
  • Praxisübungen
  • Lernziele

Zielgruppe und Vorkenntnisse

Zielgruppe: BSP- und Embedded-C-Entwicklung, Testautomatisierung, Build und Release Engineering, Qualitätssicherung und technische Maintainer.
Vorkenntnisse: Gute U-Boot-, Linux-, Git- und Python-Grundkenntnisse; Erfahrung mit Cross-Build und serieller Konsole.

1. Testpyramide festlegen

Build-, Unit-, Sandbox-, Konsolen- und Hardwaretests erhalten klare Zuständigkeiten.

  1. Schritt 1: Funktionen nach hostbasiert, emuliert und hardwareabhängig klassifizieren.
  2. Schritt 2: Schnelle Pflichtprüfungen von längeren Freigabetests trennen.
  3. Schritt 3: Abdeckung, Laufzeit und Fehlersignal je Stufe dokumentieren.

2. Sandbox aufbauen

U-Boot wird als Hostprozess für schnelle und debugbare Tests verwendet.

  1. Schritt 1: Passende Sandbox-Defconfig bauen.
  2. Schritt 2: Virtuelle Geräte und Testdaten konfigurieren.
  3. Schritt 3: Testfall mit reproduzierbarem Startzustand ausführen.

3. C-Unit-Tests schreiben

Interne Funktionen und Driver-Model-Verhalten werden nah am Code geprüft.

  1. Schritt 1: Testgruppe und Fixture für die Zielkomponente auswählen.
  2. Schritt 2: Positive, Grenz- und Fehlerfälle formulieren.
  3. Schritt 3: Test in den regulären Sandbox-Lauf integrieren.

4. pytest-Konsole verwenden

U-Boot wird über die reale Kommandozeile wie im Betrieb angesprochen.

  1. Schritt 1: Board- und Umgebungsdaten für den Test bereitstellen.
  2. Schritt 2: Kommandos ausführen und Ausgabe robust auswerten.
  3. Schritt 3: Unerwarteten Reset, Timeout und Fehlermeldung eindeutig erkennen.

5. Hardware-Hooks integrieren

Flashen, Reset, Konsole und Freigabe werden für reale Boards automatisiert.

  1. Schritt 1: Synchrones Flash-Hook mit Verifikation erstellen.
  2. Schritt 2: Reset- oder Power-Cycle-Hook zuverlässig anbinden.
  3. Schritt 3: Konsolenprozess und eindeutige Boardidentität bereitstellen.

6. Buildman und Buildmatrix einsetzen

Konfigurations- und Compilerregressionen werden vor Funktionstests erkannt.

  1. Schritt 1: Boardmenge, Architekturen und Toolchains definieren.
  2. Schritt 2: Warnungen und Größenänderungen erfassen.
  3. Schritt 3: Fehler gegen verursachenden Commit oder Konfigurationswechsel eingrenzen.

7. Fehlerinduktion und Robustheit testen

Recovery- und Fehlerpfade werden bewusst ausgelöst statt nur den Erfolgsfall zu prüfen.

  1. Schritt 1: Fehlendes Image, beschädigten Header und falsche Signatur simulieren.
  2. Schritt 2: Netzwerk-, Speicher- und Resetfehler an definierten Punkten einbringen.
  3. Schritt 3: Erwartete Rückgabe, Logmeldung und Wiederanlauf prüfen.

8. CI und Freigaberegeln gestalten

Testergebnisse, Artefakte und Grenzwerte werden für automatisierte Entscheidungen aufbereitet.

  1. Schritt 1: Builds, Logs, Images und Testergebnisse versioniert ablegen.
  2. Schritt 2: Pflicht-, Quarantäne- und Hardwaretests klar kennzeichnen.
  3. Schritt 3: Freigabe bei Fehlern, Größen- oder Bootzeitregressionen blockieren.

Praxisübungen

  • Sandbox-Build mit C-Unit-Test und Debuggerlauf.
  • pytest-Test über U-Boot-Konsole mit positiver und negativer Variante.
  • CI-Pipeline mit Buildman, Sandbox und einem simulierten Hardware-Hook.

Lernziele

  • Eine mehrstufige U-Boot-Teststrategie entwerfen.
  • Sandbox- und C-Unit-Tests implementieren.
  • pytest für Konsolen- und Hardwaretests verwenden.
  • Flash-, Reset- und Konsolen-Hooks zuverlässig integrieren.
  • Build-, Funktions-, Größen- und Bootzeitregressionen in CI blockieren.

Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner

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: BSP- und Embedded-C-Entwicklung, Testautomatisierung, Build und Release Engineering, Qualitätssicherung und technische Maintainer.
Voraussetzungen: Gute U-Boot-, Linux-, Git- und Python-Grundkenntnisse; Erfahrung mit Cross-Build und serieller Konsole.
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, Demonstrationen, praktische Übungen am System
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.

Seminar Startdatum Enddatum Ort Dauer
Konstanz 3 Tage
Freiburg 3 Tage
Potsdam 3 Tage
Flensburg 3 Tage
Leipzig 3 Tage
Hamm 3 Tage
Rostock 3 Tage
Hamburg 3 Tage
Luxemburg 3 Tage
Hannover 3 Tage
Stuttgart 3 Tage
Dresden 3 Tage
Madgeburg 3 Tage
Regensburg 3 Tage
Jena 3 Tage
Trier 3 Tage
München 3 Tage
Friedrichshafen 3 Tage
Kassel 3 Tage
Ulm 3 Tage
Münster 3 Tage
Nürnberg 3 Tage
Köln 3 Tage
Wuppertal 3 Tage
Bremen 3 Tage
Berlin 3 Tage
Mainz 3 Tage
Erfurt 3 Tage
Darmstadt 3 Tage
Frankfurt 3 Tage
Paderborn 3 Tage
Essen 3 Tage
Flensburg 3 Tage
Konstanz 3 Tage
Freiburg 3 Tage
Potsdam 3 Tage
Hamburg 3 Tage
Leipzig 3 Tage
Hamm 3 Tage
Rostock 3 Tage
Nach oben
Seminare als Stream SRI zertifiziert
© 2026 www.seminar-experts.de All rights reserved. | Kontakt | Impressum | Nach oben