Embedded-Software-Test objektorientiert für C++: Best Practices für den Klassen- und Komponenten-Test - Seminar / Kurs von MicroConsult GmbH

Embedded-Software-Test objektorientiert für C++: Best Practices für den Klassen- und Komponenten-Test

Inhalte

Grundlagen des Software-Testens

  • Der Entwicklungs- und Testprozess im klassischen V-Modell und in agilen Vorgehensmodellen
  • Entwicklungsstufen: Analyse, Design, Implementierung
  • Teststufen: Komponententest, Integrationstest, Systemtest, Abnahmetest
  • Testarten: funktionaler, nichtfunktionaler, strukturorientierter Test
  • Fehlernachtest, Regressionstest, Wartungstest
  • Risikobasiertes Testen
  • Testrelevante Standards
  • Entwicklung von testbarer Software
  • Begriffsklärung Unit, Modul, Komponente
  • Unterschied zwischen Debuggen und Testen

Testen im Software Lebenszyklus

  • Softwareentwicklungsmodelle
  • Testrelevante Standards
  • Teststufen: Komponententest, Integrationstest, Systemtest, Abnahmetest
  • Entwicklertests (Unit-, Klassentests)
  • Testarten: funktionaler, nichtfunktionaler, strukturorientierter Test
  • Fehlernachtest, Regressionstest, Wartungstest
  • Entwicklung von testbarer Software
  • Begriffsklärung Unit, Modul, Komponente
  • Ermitteln von Testfällen und Testdaten aus der Spezifikation
  • Unterschied zwischen Debuggen und Testen

Statischer Test

  • Review-Prozess: Dokumentenreview, Codereview, Inspektion, Walkthrough
  • Werkzeuggestützte statische 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 modalen und nicht-modalen Klassen
  • Testen von Methoden einer Klasse
  • Flattening beim Testen von Methoden und Zustandsautomaten
  • Testen von Klassenhierarchien
  • Testen von Assoziationen
  • Testen einer strikten und nicht-strikten Vererbung
  • Testen von polymorphen Klassenhierarchien
  • Testmuster
  • Google Test und Google Mock im Einsatz

Test Driven Development, TDD

  • Vorteile von TDD
  • Embedded TDD Strategien
  • TDD Beispiel

Integration von Hardware und Software

  • Testdurchführung auf der Hardware

Weitere Aktivitäten im Testprozess

  • Testmanagement, Planung, Steuerung
  • Risikomanagement, Fehler- und Abweichungsmanagement
  • Konfigurationsmanagement und Versionskontrolle
  • Softwarequalitätsmerkmale nach ISO 9126
  • Testdokumente nach IEEE 829
  • Testwerkzeuge im Überblick

Praktische Übungen

  • Durchführung eines Code-Reviews
  • Durchführung von Blackbox-Tests mit einem Unit-Test-Tool
  • Ermitteln von Testfällen aus der Spezifikation
  • Bestimmen von Codemetriken mit dem Tool cccc
  • Übungen zum Testen von Klassen und Klassenhierarchien mit Unit-Test-Tools und Mock-Tools
  • Ersetzen von noch nicht verfügbaren Units durch Stubs, Mocks oder Fakes
  • Übung zu Test Driven Development, TDD
  • Für die Tests auf der Hardware werden die ARM/ Keil µVision und ein Cortex®-M Evaluierungsboard eingesetzt

-------------------------------------------

Welcher MicroConsult-Testkurs ist richtig für mich?

  • Wir beleuchten für Sie den Unterschied zwischen den beiden Test-Seminaren "Embedded-Software-Test für C" und "Embedded-Software-Test objektorientiert für C++"
  • Klicken Sie dazu unterhalb der Inhaltsbeschreibung auf den entsprechenden Link

Lernziele

Dieses Test-Seminar beleuchtet die Besonderheiten beim Testen von objektorientierter Software.

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.

Zielgruppen

Software-Entwickler, Hardware-Entwickler, Testingenieure

SG-Seminar-Nr.: 5330802

Anbieter-Seminar-Nr.: TEST-OO

Preis jetzt anfragen

Seminar merken ›

Semigator berücksichtigt

  • Frühbucher-Preise
  • Last-Minute-Preise
  • Gruppenkonditionen

und verfügt über Sonderkonditionen mit einigen Anbietern.

Der Anbieter ist für den Inhalt verantwortlich.

Über Semigator mehr erfahren

  • Anbietervergleich von über 1.500 Seminaranbietern
  • Vollständige Veranstaltungsinformationen
  • Schnellbuchung
  • Persönlicher Service