Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Embedded-Software-Test: Best Practices für den Unit-/Modul-/Komponenten-Test - Live-Online-Training

  • Inhalt
     
  • Ziele -
    Ihr Nutzen
  • Teilnehmer
     
  • Voraussetzungen
     

Lernen Sie den Entwicklungs- und Testprozess im Zusammenhang mit all seinen Abhängigkeiten, Ergänzungen und Wechselbeziehungen kennen, um durch die Nutzung von Synergien effizient und effektiv zu testen.

In zahlreichen praktischen Übungen mit Software und Hardware wird das Gelernte umgesetzt.

Software-Entwickler, Hardware-Entwickler, Testingenieure

Grundkenntnisse einer höheren Programmiersprache (z.B. C/C++) sind von Vorteil.

Der Entwicklungs- und Testprozess im W-Modell (erweitertes V-Modell)

  • Entwicklungsstufen: Analyse, Design, Implementierung
  • Teststufen: Komponententest, Integrationstest, Systemtest, Abnahmetest
  • Testarten: funktionaler, nichtfunktionaler, strukturorientierter Test
  • Fehlernachtest, Regressionstest, Wartungstest
  • Testrelevante Standards
  • Entwicklung von testbarer Software
  • Begriffsklärung Unit, Modul, Komponente
  • Unterschied zwischen Debuggen und Testen

Statische Tests

  • Review-Prozess: Dokumentenreview, Codereview, Inspektion, Walkthrough
  • Werkzeuggestützte statische Code-Analyse

Dynamische Tests

  • Blackbox-Verfahren: Äquivalenzklassenbildung, Grenzwertanalyse, Entscheidungstabellentest, zustandsbasierter Test, anwendungsfallbasierter Test
  • Whitebox-Verfahren: Anweisungstest/-überdeckung, Entscheidungstest/-überdeckung, Bedingungstest/-überdeckung
  • Erfahrungsbasierte Verfahren: Error Guessing, exploratives Testen
  • Systematische Vorgehensweise bei der Entwicklung von Testfällen
  • Kriterien zur Auswahl von Testverfahren
  • Bewertung der Testverfahren

Codemetriken

  • Lines of Code, zyklomatische Zahl nach McCabe, Halstead-Metrik
  • Anwendung der Metriken im Testprozess

Design for Test

  • S.O.L.I.D. Prinzipien
  • Single Responsibility, Open Closed
  • Liskov Substitution
  • Interface Segregation, Dependency Inversion

Testen von objektorientierter Software

  • Testen von Klassenhierarchien
  • Testen von Methoden einer Klasse
  • Testen von Klassenbeziehungen
  • Testen einer strikten und nicht-strikten Vererbung
  • Testen von polymorphen Klassenhierarchien

Test Driven Development, TDD

  • Vorteile von TDD
  • Embedded TDD Strategien
  • TDD Beispiel

Integration von Komponenten zu Systemen im Überblick

  • Integrationstest, Systemtest, Abnahmetest

Integration von Hardware und Software

  • Testdurchführung auf der Hardware

Weitere Aktivitäten im Testprozess im Überblick

  • Testmanagement, Planung, Steuerung
  • Risikomanagement, Fehler- und Abweichungsmanagement
  • Konfigurationsmanagement und Versionskontrolle
  • Softwarequalitätsmerkmale nach ISO 9126
  • Testdokumente nach IEEE 829
  • Testwerkzeuge Typen, Auswahl, Einführung

Praktische Übungen

  • Übungen zu Testanalyse, Testentwurf, Testrealisierung, Testdurchführung, Testbericht
  • Durchführung eines Code-Reviews
  • Durchführung von Blackbox- und Whitebox-Tests mit Tessy, mit und ohne Hardware
  • Ermittlung von Testdaten nach der Classification Tree Methode mit CTE
  • Bestimmen von Codemetriken mit den Tools cccc und CMT++
  • Google Test und Google Mock im Einsatz
  • Für die Tests auf der Hardware werden die Arm/ Keil µVision und ein Cortex™-M Evaluierungsboard eingesetzt.

Im Preis enthalten:
Trainingsdokumentation, Ihr Zertifikat sowie ggf. erforderliche Ziel-HW o.ä.


ALL INCLUSIVE!

Spätestens 3 Wochen vor Trainingsbeginn erhalten Sie eine verbindliche Durchführungsbestätigung.

Einige Tage vor dem Live-Online-Training erhalten Sie von uns E-Mails mit …

  • ausführlichen Infos rund um Ihr Training
  • Ihre Schulungsunterlagen (Download-Link)
  • einer Einladung zu einer optionalen Probesession mit dem Trainer
  • einer Einladung für die Schulungstage, mit Link und Zugangsdaten

Ggf. erforderliche Übungs-HW senden wir Ihnen rechtzeitig vorab zu.


ABLAUF

Verwandte Trainings

Agiles Testen und Test-Driven Development (TDD) von Embedded-Systemen - Live-Online-Training
Anmeldecode: L-AGILTDD

Requirements Engineering Schulung: Requirements Engineering und Requirements Management für Embedded-Systeme - Live-Online-Training
Anmeldecode: L-REQ-ENG

Agile Entwicklung von Embedded-Systemen: Agile Planung, Entwicklung und Test von Embedded-Systemen und agile Softwareentwicklung im Scrum-Framework - Live-Online-Training
Anmeldecode: L-AGILDEV

Scrum-Schulung: Einsatz in der agilen Entwicklung von Embedded-Systemen - Live-Online-Training
Anmeldecode: L-SCRUM

Embedded-Linux für Test und Support - Live-Online-Training
Anmeldecode: L-LIN-T


Verwandte Trainings

Live Online Training

Termin Preis *Dauer
08.07. – 11.07.20242.800,00 €4 Tage 
27.01. – 30.01.20252.800,00 €4 Tage 
Anmeldecode: L-EMBTEST
* Preis je Teilnehmer, in Euro zzgl. USt.

> Download Blanko-Anmeldeformular
> Trainingsbeschreibung als PDF

Präsenz-Training - Deutsch

Termin Dauer
14.10. – 17.10.2024 4 Tage  

Live-Online - Englisch

Dauer
4 Tage  

Präsenz-Training - Englisch

Dauer
4 Tage  

Embedded-Software-Test: Best Practices für den Unit-/Modul-/Komponenten-Test - Live-Online-Training

Inhalt

Der Entwicklungs- und Testprozess im W-Modell (erweitertes V-Modell)

  • Entwicklungsstufen: Analyse, Design, Implementierung
  • Teststufen: Komponententest, Integrationstest, Systemtest, Abnahmetest
  • Testarten: funktionaler, nichtfunktionaler, strukturorientierter Test
  • Fehlernachtest, Regressionstest, Wartungstest
  • Testrelevante Standards
  • Entwicklung von testbarer Software
  • Begriffsklärung Unit, Modul, Komponente
  • Unterschied zwischen Debuggen und Testen

Statische Tests

  • Review-Prozess: Dokumentenreview, Codereview, Inspektion, Walkthrough
  • Werkzeuggestützte statische Code-Analyse

Dynamische Tests

  • Blackbox-Verfahren: Äquivalenzklassenbildung, Grenzwertanalyse, Entscheidungstabellentest, zustandsbasierter Test, anwendungsfallbasierter Test
  • Whitebox-Verfahren: Anweisungstest/-überdeckung, Entscheidungstest/-überdeckung, Bedingungstest/-überdeckung
  • Erfahrungsbasierte Verfahren: Error Guessing, exploratives Testen
  • Systematische Vorgehensweise bei der Entwicklung von Testfällen
  • Kriterien zur Auswahl von Testverfahren
  • Bewertung der Testverfahren

Codemetriken

  • Lines of Code, zyklomatische Zahl nach McCabe, Halstead-Metrik
  • Anwendung der Metriken im Testprozess

Design for Test

  • S.O.L.I.D. Prinzipien
  • Single Responsibility, Open Closed
  • Liskov Substitution
  • Interface Segregation, Dependency Inversion

Testen von objektorientierter Software

  • Testen von Klassenhierarchien
  • Testen von Methoden einer Klasse
  • Testen von Klassenbeziehungen
  • Testen einer strikten und nicht-strikten Vererbung
  • Testen von polymorphen Klassenhierarchien

Test Driven Development, TDD

  • Vorteile von TDD
  • Embedded TDD Strategien
  • TDD Beispiel

Integration von Komponenten zu Systemen im Überblick

  • Integrationstest, Systemtest, Abnahmetest

Integration von Hardware und Software

  • Testdurchführung auf der Hardware

Weitere Aktivitäten im Testprozess im Überblick

  • Testmanagement, Planung, Steuerung
  • Risikomanagement, Fehler- und Abweichungsmanagement
  • Konfigurationsmanagement und Versionskontrolle
  • Softwarequalitätsmerkmale nach ISO 9126
  • Testdokumente nach IEEE 829
  • Testwerkzeuge Typen, Auswahl, Einführung

Praktische Übungen

  • Übungen zu Testanalyse, Testentwurf, Testrealisierung, Testdurchführung, Testbericht
  • Durchführung eines Code-Reviews
  • Durchführung von Blackbox- und Whitebox-Tests mit Tessy, mit und ohne Hardware
  • Ermittlung von Testdaten nach der Classification Tree Methode mit CTE
  • Bestimmen von Codemetriken mit den Tools cccc und CMT++
  • Google Test und Google Mock im Einsatz
  • Für die Tests auf der Hardware werden die Arm/ Keil µVision und ein Cortex™-M Evaluierungsboard eingesetzt.