Beschreibung
Qualitativ hochwertige Software ist unabdingbar mit den dazugehörigen Tests verknüpft. Jedoch gestaltet sich effizientes Testen gerade im Embedded Umfeld häufig sehr herausfordernd. Gleichzeitig stellen verfügbare Testframeworks möglicherweise eine hohe Einstiegshürde dar oder deren Anwendung auf das Embedded-C++-Umfeld erschließt sich nicht direkt.
Dieses Seminar gibt Ihnen Werkzeuge an die Hand, um Ihre Embedded C++ Software testbar zu designen, Hardware-Abhängigkeiten zu faken und vermittelt anschaulich die Grundlagen, um eine umfassende Testsuite zur Absicherung Ihrer Software zu realisieren.
Dieses praxisorientierte Seminar mit vielen Programmierübungen stellt die Grundlagen für wartbare und testbare Embedded Software vor. Sie lernen dabei Prinzipien und Definitionen guter Tests kennen sowie unterschiedliche Klassifikationsansätze. Damit diese Prinzipien auf Ihre Embedded Software angewandt werden können sind einige Ansätze zur Strukturierung unterschiedlicher Softwareschichten nötig, die im Seminar praxisnah vorgestellt werden:
Die Nutzung von Interfaces innerhalb von C++ sowie deren Anwendung zur Lauf- oder Compile-Zeit.
Während des Seminars lernen Sie konkret, wie Sie Ihre Klassen testbar gestalten und diese mittels Testframeworks effizient absichern können.
Abschließend wird auf die Integration der Testing-Aktivitäten in den Softwareentwicklungsprozess eingegangen sowie die Nutzung von statischer Codeanalyse und daraus abgeleiteten Qualitätsmetriken thematisiert.
Software-Tester, Entwickler, Designer, Software-Architekten
Donnerstag, 17. und Freitag, 18. Oktober 2024
9.00 bis 16.30 Uhr, inkl. Pausen
- Was versteht man unter Clean Code und Modernem C++?
- Was sind Prinzipien eines guten Tests und was sind spezielle Herausforderungen im Umfeld der Embedded Softwareentwicklung?
- Was sind Fakes, Mocks, Unit-Tests, Integrationstests, …?
- Aufbau, Struktur und Benamung von Tests, um eine umfassende Testsuite zu etablieren
- Strukturierung und Design von testbarer Software: Nutzung von Abstraktion und Interfaces
- Separation von hardware-abhängigen und -unabhängigen Softwarekomponenten
- Umsetzung des Design-Patterns „Dependency Injection“ in Modernem C++ als Kern-Element zur Isolation von Komponenten
- Lauf-Zeit und Compile-Zeit Ansätze zur Injektion von Fakes
- Vorstellung und Nutzung von Testframeworks (Google Test, GMock)
- CMake als Werkzeug zur Beschreibung des Build-Prozesses von Produktions- und Test-Code
- Integration der Testing-Aktivitäten in den Softwareentwicklungsprozess (CI/CD)
- Werkzeuge zur Analyse der Testcoverage im C++ Kontext
- Qualitätsmetriken & statische Codeanalyse
Kommende Starttermine
Videopräsentation
Infos anfordern
TAE – Berufliche Fort- und Weiterbildung
Die Technische Akademie Esslingen (TAE) gehört seit mehr als 65 Jahren zu den bedeutendsten Anbietern für berufsvorbereitende und berufliche Qualifizierungen Deutschlands. Die TAE deckt mit jährlich rund 1.000 Veranstaltungen in 17 verschiedenen Themenbereichen nahezu jedes Feld ab, zu dem man sich...
Erfahren Sie mehr über TAE - Technische Akademie Esslingen e.V. und weitere Kurse des Anbieters.