Selenium
Bei Selenium handelt es sich um ein Testframework für Web-Anwendungen.
Mit dessen Hilfe ist es möglich, Interaktionen mit einer Web-Anwendung aufnehmen zu lassen und diese Tests automatisiert beliebig oft wieder abzuspielen. Es kann vor allem Entwicklern von Web-Anwendungen sehr viel unnötige Tipparbeit abnehmen, was z.B. das wiederholte Ausfüllen von Webformularen anbelangt. Tester profitieren natürlich ebenfalls von dieser Art der Testautomatisierung.
Es basiert rein auf HTML und JavaScript. Für einen schnellen Einstieg kann direkt die Selenium IDE als Firefox-Plugin installiert und getestet werden. Der erste Test ist wirklich sehr schnell aufgezeichnet: der Benutzer interagiert nur mit seinem Firefox und Selenium nimmt für ihn den Test auf und spielt ihn wieder ab.
Das Framework enthält mittlerweile 4 Module, die alle als Open-Source unter OpenQA heruntergeladen und verwendet werden können.
Selenium Core: Das Core-Modul enthält die komplette Basisfunktionalität von Selenium, sprich die Testbefehl-API und den TestRunner. Unter Verwendung des Core- Modules kann die TestRunner.html Webseite mit verschiedenen Browsern geöffnet werden. Dadurch werden Kompatibilitätstests mit verschiedenen Browsertypen möglich, auf Basis eines Tests.
Selenium IDE: Eine Erweiterung für den Firefox, um Tests aufzunehmen und abspielen zu lassen. Basiert intern auf dem Core-Modul. Perfekt für den Einstieg.
Selenium Remote Control (RC): Ein Modul, das eine eigene Server-Instanz bereitstellt, über die Tests, die z.B. in Java (analog zu JUnit) implementiert sind, remote ausgeführt werden können. Testautomatisierung von GUI-Tests in Kombination mit Continouus Integration. Basiert intern auf dem Core-Modul.
Selenium on Rails: Selenium Core, aber direkt an Rails gekoppelt. Basiert intern auf dem Core-Modul.