© Excellent backgrounds/Shutterstock.com
Automatisiertes Testen von Weboberflächen

Selenium 2020 - wo stehen wir jetzt?


Sozialistische Staaten verfügen oft über einen Fünfjahresplan – dieser Artikel ist jedoch ein Fünfjahresupdate: 2015 wurde mit der Ambition, einen schnellen ersten Einstieg in das automatisierte Testen von Weboberflächen zu liefern, ein Einführungsartikel mit den Basics zu Selenium WebDriver geliefert [1]. Jetzt, fünf Jahre später, ist es an der Zeit, dem Platzhirsch einen erneuten Besuch abzustatten, um zu schauen, was sich geändert hat, was noch genau so wie früher ist, und mit welchen Neuerungen Entwickler*innen heutzutage rechnen sollten.

Das große Zeitalter komplexer Desktopanwendungen ist vorbei – darauf kann man sich vermutlich mittlerweile einigen. Immer mehr Anwendungen, von einfachen Adressverwaltungen bis hin zu komplexen ERP-Anwendungen oder auch Verfahren im öffentlichen Dienst, finden im Browser statt. Diese Anwendungen müssen aber ebenso getestet werden – oftmals findet das noch manuell durch große Teams von Tester*innen statt, aber auch immer mehr durch das Aufsetzen automatisierter Testdurchführung. Einige wichtige Argumente sprechen nach wie vor für die Automatisierung von UI-Tests, unter anderem:

  • UI-Tests lassen sich (im Vergleich zur kohlenstoffbasierten Variante) in hoher Geschwindigkeit ausführen.

  • Sie lassen sich auch in eine CI/CD Pipeline einbinden.

  • Sie lassen sich beliebig oft wiederholen (Regression) und es ist garantiert, dass die Testschritte immer nach dem gleichen Schema ablaufen.

  • Ein „kleiner Integrationstest“ quer durch alle Schichten der zu testenden Anwendung wird ermöglicht, von der Weboberfläche über Services und Datenbankanbindung bis weiter hinab in die Datenbank und wieder zurück.

Natürlich darf man auch nicht vergessen, dass all diesen Argumenten auch einige Punkte gegenüberstehen, zum Beispiel nicht unerhebliche Implementierungs- und Wartungsaufwände. Man muss sich die Frage stellen, wie wichtig es z. B. noch ist, manuelle Tests durch automatisierte zu ersetzen, wenn eine Anwendung entweder a) durch eine neue Anwendung ersetzt werden soll, oder b) eine komplett neue Oberfläche in Kürze bereitgestellt wird. Oftmals ist es auch aus Zeitgründen gar nicht möglich, eine umfangreiche UI-Testautomatisierung zu etablieren. Anmerken soll man natürlich auch, dass es möglicherweise aus politischen Gründen innerhalb eines Projekts gar nicht gewünscht sein könnte, manuelle Tests zu automatisieren, denn dadurch würde sich auch der Bedarf an (manuellen) Tester*innen verringern, was möglicherweise heißt, dass ein Auftragnehmer...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang