Beschreibung
Integrationstests spielen eine zentrale Rolle in der Qualitätssicherung, da sie sicherstellen, dass unterschiedliche Softwarekomponenten zuverlässig zusammenarbeiten. Mit C# lassen sich Integrationstests gezielt implementieren, automatisieren und in bestehende Entwicklungsprozesse integrieren, um Fehler frühzeitig zu erkennen und die Stabilität von Systemen zu gewährleisten.
Vermittelt wird ein praxisorientierter Einstieg in die Planung, Durchführung und Automatisierung von Integrationstests für native Anwendungen, für Entwickler:innen und Tester:innen, die Qualität auf Integrations- und UI-Ebene gezielt sichern wollen.
Im Fokus der Schulung steht das Verständnis der Rolle von Integrationstests im Gesamtkontext der Softwarequalität. Die Teilnehmenden lernen, wie sich Integrationstests von Unit- und Systemtests unterscheiden und wann ihr Einsatz sinnvoll ist. Anhand konkreter Beispiele wird gezeigt, wie native Anwendungen automatisiert getestet werden können.
Ein zentraler Bestandteil der Schulung ist die praktische Arbeit mit FlaUI als C#-basiertem Framework zur UI-Automatisierung. Ergänzend wird ein Überblick über alternative Werkzeuge wie Ranorex gegeben, um Unterschiede in Konzept, Einsatzgebiet und Architektur einzuordnen. Die Teilnehmenden erstellen eigene Tests, führen diese aus und analysieren die Ergebnisse.
Darüber hinaus werden fortgeschrittene Techniken wie die gezielte Steuerung komplexer UI-Elemente, der Einsatz von Wartebedingungen sowie Debugging-Strategien behandelt. Abgerundet wird die Schulung durch Aspekte der Testplanung, Wiederverwendbarkeit und Integration automatisierter Tests in CI/CD-Pipelines. Praxisnahe Beispiele aus realen Projekten sorgen für einen hohen Anwendungsbezug.
Ziel der Schulung
Nach Abschluss der Schulung sind die Teilnehmenden in der Lage:
- Integrationstests im Gesamtkontext der Teststrategie einzuordnen
- Unterschiede zwischen Unit-, Integrations- und Systemtests zu verstehen
- FlaUI für die Automatisierung von Integrationstests mit C# einzusetzen
- UI-Elemente gezielt zu analysieren und zuverlässig zu steuern
- stabile und wartbare automatisierte Tests zu entwickeln
- Tests auszuführen, Ergebnisse zu analysieren und Fehler systematisch zu beheben
- Integrationstests in CI/CD-Pipelines einzubinden
- Automatisierte Tests praxisnah in realen Projekten anzuwenden