Beschreibung
Die Bedeutung von Software nimmt im Informationszeitalter stetig zu. Darum wird es immer wichtiger, Software schnell und in hoher Qualität zu entwickeln. Schlecht durchgeführte Entwicklungsprozesse kosten Zeit und Geld. Fehlerhafte Software kann im schlimmsten Fall zu katastrophalen Schäden führen.
Methodisch angewandtes Unit Testing sollte integraler Teil jedes größeren Softwareentwicklungsprozesses sein. Das Ziel dabei ist, von vornherein Code zu erstellen, der funktional korrekt ist, und eine höhere Qualität bezüglich Struktur und Stil hat. Ein positiver Nebeneffekt von gutem Testing ist auch ein auf lange Sicht schnellerer Projektfortschritt und weniger Frustration bei Entwicklungsteams.
Bewusstsein für die Bedeutung von Korrektheit und Qualität von Software entwickeln
- Erkennen von Vorteilen und positivem Einfluss auf Entwicklungsprojekte
- Abbau von Vorurteilen und Missverständnissen bzgl. Testing
Verständnis des theoretischen Hintergrunds von Software Testing und der damit verbundenen Terminologie erlangen
- Grundlagenwissen, dass das Verstehen und die Einordnung von existierenden Technologien/Frameworks erlaubt
Erlernen und Anwenden von konkreten Methoden und Techniken für Unit Testing
- Kennen von Best Practices und Hintergründen
- Erlangung der Fähigkeit, in konkreten Fällen abzuwägen und sinnvolle Entscheidungen zu treffen
Diese Schulung richtet sich an Personen, die individuell oder im Team komplexe Softwaresysteme entwickeln und ihre Fähigkeiten im Bereich Software Testing erweitern möchten. Die Teilnehmenden sollten einen Rechner mit einer installierten Softwareentwicklungsumgebung und einem Testing Framework ihrer Wahl mitbringen. Die praktischen Übungen können flexibel in verschiedenen Programmiersprachen gemacht werden.
Montag, 7. und Dienstag, 8. April 2025
jeweils von 9.00 bis 17.00 Uhr, inkl. Pausen
Grundlagen von Unit Testing
- Motivation für Software/Unit Testing
- Abwägung von Vorteilen und Nachteilen, Nutzen und Kosten bei Testing
- Terminologie
- Struktur und Ausführung von Unit Tests
Test Driven Development
- Motivation und Grundlagen der Methode
- TDD-Terminologie
- Pattern und Best Practices für die einzelnen Phasen des TDD-Zyklus
- Diskussion von Vorteilen/Nachteilen
Dependency Breaking
- Zusammenhang zwischen Architektur/Struktur von Source Code und dessen Testbarkeit
- verschiedene Herausforderungen bei Testing und Strategien zur Überwindung von Schwierigkeiten bei stark gekoppelten Modulen
- Einsatz von Mocking-Techniken
Testing von Legacy Code
- spezielle Herausforderungen bei Wartung und Testing von Legacy Code
- Strategien zum selektiven Testen von bisher ungetestetem Legacy Code
- Techniken zur Verbesserung der Testbarkeit
Testing und Concurrency
- Techniken zur Beherrschung des Zeitverhaltens bei Testing von nebenläufigem/parallelem Code
Best Practices für Testing und Software Engineering
- allgemeine Regeln für Wann/Was/Wie etc. bei Testing
- kurzer Anriss zu Clean Code
Übungen
- theoretische und praktische Übungen im Querschnitt durch alle Teile der Schulung
- Running Example: zwei durchgehende Beispielprojekte
gemeinsame Übung in der Gruppe
individuelle Übung - ggf. flexible Anwendungsübungen, die sich aus Diskussionen oder Fragen ergeben
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.