Sessionsdetails
Warum Webkomponenten testen, wenn man die UI testen kann?
Zum Testen einer Webapplikation bieten sich zwei Wege an: Entweder man testet einzelne Webkomponenten oder man betreibt aufwendige End-To-End-Tests des gesamten Systems. Aber geht das nicht besser? Dieser Vortrag stellt mit dem Konzept UI-Tests einen alternativen Ansatz vor, bei dem die Anwendung im Browser automatisiert getestet wird, ohne auf Backend oder Systemabhängigkeiten angewiesen zu sein. Anhand eines Beispiels wird gezeigt, wie dieses Vorgehen Funktionalität und Qualität sicherstellt und welche neuen Möglichkeiten es eröffnet. UI-Tests sind somit ein mächtiges Werkzeug, von dessen Einsatz das gesamte Produktteam profitieren kann.
Zielpublikum: Entwicklungsteams, also Softwareentwickler:innen, Tester:innen, Produktverantwortliche
Voraussetzungen: Grundlagen der Webentwicklung und des Browser-basierten Testens
Schwierigkeitsgrad: Advanced
Extended Abstract:
In der nutzerzentrierten Softwareentwicklung ist die UI die wichtigste Schnittstelle des Systems, denn sie ermöglicht den Nutzern erst die Interaktion mit der Anwendung. Ironischerweise ist das Testen dieser Schnittstelle mit gewissen Herausforderung verbunden. Um Nutzerflows im Browser nachzustellen, fährt man klassischerweise aufwendige End-to-End-Tests, die langsam und ressourcenintensiv sind, da sie das gesamte System erfordern. Details werden oft durch Einzelkomponententests abgedeckt, deren Aussagekraft jedoch limitiert ist. Das Konzept der UI-Tests beschreitet einen Weg dazwischen. Das Webfrontend wird komplett hochgefahren und mittels simulierter Nutzerinteraktionen im Browser automatisiert getestet. Allerdings werden dahinterliegende Systeme (Backends, Infrastruktur) nicht tatsächlich angesprochen, sondern durch vordefinierte Antworten ersetzt. Dieses Vorgehen kombiniert die Vorteile der beiden klassischen Vorgehen auf eine Weise, dass sie die Nachteile des jeweils anderen ausgleichen. Zudem ermöglicht es, Browserunabhängigkeit und Responsivität sicherzustellen. Dieser Vortrag wird anhand eines praktischen Beispiels das Vorgehen vorstellen, die Vorteile herausarbeiten und das Konzept kritisch beleuchten. Er wird zudem Tipps für den Einsatz in der Praxis geben, die auf eigenen Erfahrungen basieren. Er ist somit nicht nur für Entwickler:innen, sondern für das gesamte Entwicklungsteam geeignet.
Felix Wunderlich ist passionierter Softwareentwickler mit einer besonderen Vorliebe für funktionale Programmierung, Testing und komplexe Probleme. Er studierte Informatik mit Schwerpunkten Software Engineering, IT-Sicherheit und Human Computation an der LMU München. Seit 2018 arbeitet er als Softwareingenieur im Software Development Center der Volkswagen AG in Wolfsburg.
Vortrag Teilen