WICHTIG: Eingeschränkter Parkraum. Bitte informieren Sie sich vor Ihrer Anreise über die aktuelle Parksituation. Mehr erfahren
MENU
Neuer Termin in Planung!

Unit Testing in der Softwareentwicklung - Deep Dive

Test Driven Development

Angebot runterladen

für

Unit Testing in der Softwareentwicklung - Deep Dive

Ihre Anschrift

Referent:in

Dr. rer. nat. Frank Raiser

Konzept Informationssysteme GmbH, Ulm
Herr Raiser hat eine Promotion in Informatik abgeschlossen und verfügt über ein breites Fachwissen in den Bereichen Softwareentwicklung, Systemarchitektur und Enterprise Softwareentwicklung. Er ist ein erfahrener Berater und hat in seiner Karriere eine Vielzahl von Softwareprojekten erfolgreich abgeschlossen.
Als Leiter des Schulungszentrums der Konzept Informationssysteme GmbH ist er verantwortlich für die Entwicklung und Umsetzung von Schulungsprogrammen für Softwareentwickler.
Durch seine langjährige Erfahrung in der Branche und sein breites Fachwissen ist Herr Raiser in der Lage, komplexe Zusammenhänge verständlich zu erklären und praxisorientierte Lösungen für Softwareprojekte zu entwickeln. Er legt dabei besonderen Wert auf eine enge Zusammenarbeit mit seinen Kunden und eine hohe Qualität in der Umsetzung.
Insgesamt zeichnet sich Herr Raiser durch sein hohes fachliches Know-how und seine praxisorientierte Arbeitsweise aus. Er ist ein geschätzter Experte in der Branche und trägt mit seinen Schulungs- und Beratungsleistungen maßgeblich zum Erfolg von Softwareprojekten bei.

Beschreibung
Das Thema Unit-Testing und Test Driven Development (TDD) ist in nahezu jedem Softwareprojekt von Bedeutung. Diese Schulung vermittelt kurz das notwendige Grundlagenwissen, um dann tiefer in die verschiedenen Fragestellungen einzutauchen, die für das erfolgreiche Unit-Testing relevant sind. Test Driven Development hilft dabei – auch aus didaktischen Gründen – ein besseres Bewusstsein für die Schwierigkeiten und Herausforderungen zu entwickeln. Es wird eine Vielzahl an Techniken, wie explanation tests, learning tests oder triangulation, vermittelt und geübt, welche später auch außerhalb des TDD-Kontext angewendet werden können. Abgerundet wird die Schulung mit einem speziellen Blick auf die Problematik des Unit-Testing im Legacy-Code Umfeld. Während TDD am liebsten ohne existierenden Code startet, stellen die großen Mengen an existierendem Quellcode im Alltag oft eine zusätzliche Herausforderung dar. Dieser lässt sich häufig schwer testen, ist komplex und Änderungen daran bergen ein hohes Fehlerrisiko. Die größte Schwierigkeit dabei ist die hohe Kopplung, d.h. Abhängigkeiten zu vielen anderen Teilen des Quellcodes, welche einer Isolation des zu testenden Codes entgegenwirken. Um diese in den Griff zu bekommen, vermittelt die Schulung hilfreiche Dependency-Breaking-Techniken und grundlegende Vorgehensweisen für dieses Umfeld.

Ziel der Weiterbildung

Die Teilnehmer/-innen bekommen durch die Schulung das notwendige Wissen über Techniken und Methodiken, um wartbare und wertvolle Unit-Tests entwickeln zu können. Sie erleben das Zusammenspiel zwischen Unit-Tests und gutem Design und sind gerüstet, um auch bestehenden Legacy-Quellcode testen zu können. Die Teilnehmer/-innen lernen dabei, wie man durch die Unit-Tests zu einem guten Design im Produktivcode kommt. Sie werden in die Lage versetzt sich bewusst mit Seams, Enabling- und Interception-Punkten in ihrem Programmcode auseinander zu setzen. Dadurch entsteht flexiblerer Code, welcher nicht nur leichter zu testen, sondern auch wartbarer und besser verständlich ist.

Methodik Neben der reinen Wissensvermittlung üben die Teilnehmenden die Inhalte aktiv an Beispielaufgaben ein. Um dabei möglichst nah am Entwicklungsalltag zu bleiben, verwenden sie dazu ihre bevorzugte Programmiersprache und Testumgebung. Während den Übungen steht es den Teilnehmerinnen und Teilnehmern frei, das Erlernte auch im eigenen Projekt anzuwenden und sofern möglich, Erkenntnisse daraus zu diskutieren. Voraussetzungen Die Teilnehmer/-innen benötigen für die Übungen einen eigenen Rechner mit funktionierender Unit-Testing-Umgebung. (Tests und Produktiv-Code erstellen, Tests ausführen, Ergebnisse sehen). Für die Übungen werden auch die eigene Projektumgebung und Quellcode verwendet und die Teilnehmenden sind dabei angehalten die Inhalte der Schulung bereits in diesem Rahmen auf ihren Alltag zu übertragen. Dabei entstehende Fragen oder Hilfestellungen durch den Trainer können allerdings nur erfolgen, wenn dies gemäß der projekt-spezifischen Vereinbarungen (NDA) erlaubt ist. Die Teilnehmenden sollten daher vor der Schulung ihre projekt-spezifischen Grenzen in Erfahrung bringen.
Programm

Montag, 6. und Dienstag, 7. November 2023
jeweils von 9.00 bis 17.00 Uhr inkl. Pausen

Motivation 
– Vor- und Nachteile 
– organisatorische und persönliche Voraussetzungen

Wichtige Begrifflichkeiten 
– Coverage 
– Seams 
– Dependency Breaking

Aufbau von Unit Tests 
– Struktur 
– Verhalten 
– Erweiterbarkeit 
– Ausführung

Test Driven Development 
– Definition 
– Techniken

TDD Patterns 
– Red Bar Patterns 
– Testing Patterns 
– Green Bar Patterns

Dependency-Breaking-Techniken 
– Ausnutzen der Objekthierarchie 
– Static/globalen Zustand ersetzen

Testen von Legacy-Code 
– Zielsetzung 
– Cover and Modify 
– häufige Fragen

Best Practices 
– Feedback-Geschwindigkeit 
– Wertschöpfung sicherstellen

Teilnehmer:innenkreis
Die Schulung richtet sich primär an Softwareentwickler/-innen, aber auch an interessierte Tester/-innen, die mehr über den Zusammenhang zwischen Unit-Tests und Codedesign erfahren möchten.
Referent:innen

Dr. rer. nat. Frank Raiser

Konzept Informationssysteme GmbH, Ulm
Herr Raiser hat eine Promotion in Informatik abgeschlossen und verfügt über ein breites Fachwissen in den Bereichen Softwareentwicklung, Systemarchitektur und Enterprise Softwareentwicklung. Er ist ein erfahrener Berater und hat in seiner Karriere eine Vielzahl von Softwareprojekten erfolgreich abgeschlossen.
Als Leiter des Schulungszentrums der Konzept Informationssysteme GmbH ist er verantwortlich für die Entwicklung und Umsetzung von Schulungsprogrammen für Softwareentwickler.
Durch seine langjährige Erfahrung in der Branche und sein breites Fachwissen ist Herr Raiser in der Lage, komplexe Zusammenhänge verständlich zu erklären und praxisorientierte Lösungen für Softwareprojekte zu entwickeln. Er legt dabei besonderen Wert auf eine enge Zusammenarbeit mit seinen Kunden und eine hohe Qualität in der Umsetzung.
Insgesamt zeichnet sich Herr Raiser durch sein hohes fachliches Know-how und seine praxisorientierte Arbeitsweise aus. Er ist ein geschätzter Experte in der Branche und trägt mit seinen Schulungs- und Beratungsleistungen maßgeblich zum Erfolg von Softwareprojekten bei.

Veranstaltungsort

ONLINE

Gebühren und Fördermöglichkeiten

Die Teilnahme beinhaltet ausführliche Unterlagen.

Preis:
Die Teilnahmegebühr beträgt:
1.280,00 € (MwSt.-frei) pro Teilnehmer

Fördermöglichkeiten:

Für den aktuellen Veranstaltungstermin steht Ihnen die ESF-Fachkursförderung mit bis zu 70 % Zuschuss zu Ihrer Teilnahmegebühr zur Verfügung (solange das Fördervolumen noch nicht ausgeschöpft ist).
Für alle weiteren Termine erkundigen Sie sich bitte vorab bei unserer Anmeldung.

Weitere Bundesland-spezifische Fördermöglichkeiten finden Sie hier.

Inhouse Durchführung:
Sie möchten diese Veranstaltung firmenintern bei Ihnen vor Ort durchführen? Dann fragen Sie jetzt ein individuelles Inhouse-Training an.

Bewertungen unserer Teilnehmer

(0,0 von 5)
5 Sterne
(0)
4 Sterne
(0)
3 Sterne
(0)
2 Sterne
(0)
1 Sterne
(0)
0 Sterne
(0)
Noch keine Bewertung vorhanden

TAE Newsletter

Bleiben Sie informiert! Entdecken Sie den TAE Themen-Newsletter mit aktuellen Veranstaltungen rund um Ihren persönlichen Tätigkeitsbereich. Direkt anmelden, Interessensbereiche auswählen und regelmäßig relevante Infos zu unserem Weiterbildungsangebot erhalten – abgestimmt auf Ihren Bedarf.

Jetzt registrieren

Fragen zur Veranstaltung?

Ihr Ansprechpartner für die Veranstaltung

Carmen Fritz, M.Sc.
Carmen Fritz, M.Sc.
Informationstechnik (IT)