c't 11/2018
S. 172
Know-how
Selenium
Aufmacherbild

Klickroboter

Automatisches Testen mit Selenium

Automatisches Testen kann die Fehlerrate von Programmen drastisch reduzieren. Um die Oberflächen von Webanwendungen automatisch zu testen, muss der Rechner wie ein Mensch klicken und tippen. Mit dem Automatisierungsframework Selenium gelingt das mit wenigen Zeilen Code.

Webseite aufrufen, Formular ausfüllen, Button anklicken, prüfen, ob der richtige Text angezeigt wird. Webanwendungen testen ist einfach, aber stupide. Genau diese drei Schritte muss ein Entwickler nämlich nach jeder Änderung am Quellcode erneut ausführen, genau wie zahlreiche andere ebenso stupide Abläufe. Selbst bei winzigen Bugfixes sollte er sich diese Arbeit auf keinen Fall sparen, da jede Änderung Seiteneffekte haben könnte, die er übersieht. Damit der Entwickler noch Zeit zum Entwickeln hat, statt nur zu testen, führt an automatischen Tests kein Weg vorbei.

Selenium erlaubt genau solche automatischen Tests von Web-GUIs. Das Framework steuert den Browser, wie ein Mensch das tun würde. Das heißt, es klickt auf Links und Buttons, füllt Textfelder aus oder wählt Einträge aus Listen aus. Zeigt der Browser dabei seine Oberfläche an, kann man dem Rechner sogar dabei zusehen, wie er wie von Geisterhand die Webseite bedient.