Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Embedded-Software-Test: Best Practices für den Unit-/Modul-/Komponenten-Test - Präsenz-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:
Mittagessen, Getränke, Trainingsunterlagen und Ihr Teilnahmezertifikat


ALL INCLUSIVE!

Verwandte Trainings

Agiles Testen und Test-Driven Development (TDD) von Embedded-Systemen - Präsenz-Training
Anmeldecode: AGILTDD

Requirements Engineering Schulung: Requirements Engineering und Requirements Management für Embedded-Systeme - Präsenz-Training
Anmeldecode: REQ-ENG

Software-Usability Praxis-Seminar: Produkte benutzerfreundlich entwickeln - Präsenz-Training
Anmeldecode: SW-USA

Agile Entwicklung von Embedded-Systemen: Agile Planung, Entwicklung und Test von Embedded-Systemen und agile Softwareentwicklung im Scrum-Framework - Präsenz-Training
Anmeldecode: AGILDEV

Scrum-Schulung: Einsatz in der agilen Entwicklung von Embedded-Systemen - Präsenz-Training
Anmeldecode: SCRUM

Embedded-Linux für Test und Support - Präsenz-Training
Anmeldecode: LIN-T

Coaching: Test
Anmeldecode: C-TEST


Verwandte Trainings

Präsenz-Training

TerminPreis *Dauer
14.10. – 17.10.20242.800,00 €4 Tage 
Anmeldecode: EMBTEST
* Preis je Teilnehmer, in Euro zzgl. USt.
> Download Blanko-Anmeldeformular> Trainingsbeschreibung als PDF

Onsite-Training

In maßgeschneiderten Workshops kombinieren wir Ihre konkreten Projektaufgaben mit unserem Trainingsangebot. Dabei berücksichtigen wir Ihre Anforderungen bezüglich Inhalt, Zeit, Ort, Dauer, technischem Umfeld und Vermittlungsmethodik.

Für Ihre Anfrage oder weiterführende Informationen stehen wir Ihnen gern zur Verfügung.

> Trainingsbeschreibung als PDF

Live-Online - Deutsch

Termin Dauer
08.07. – 11.07.2024 4 Tage  
27.01. – 30.01.2025 4 Tage  

Präsenz-Training - Englisch

Dauer
4 Tage  

Live-Online - Englisch

Dauer
4 Tage  

Coaching

Unsere Coaching-Angebote bieten den großen Vorteil, dass unsere Experten ihr Wissen und ihre Erfahrungen direkt in Ihren Lösungsprozess einbringen und damit unmittelbar zu Ihrem Projekterfolg beitragen.

Coaching: Test

Embedded-Software-Test: Best Practices für den Unit-/Modul-/Komponenten-Test - Präsenz-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.