Name

Selenium IDE 1.0.6
(Integrated Development Environment)

Homepage

http://seleniumhq.org

Lizenz

Apache-Lizenz 2.0

Untersuchte Version

Selenium IDE 1.0.6
Datum: 15.04.2010

Letzter Untersuchungszeitpunkt

Selenium IDE 1.0.6
Datum: 3.05.2010

Kurzbeschreibung

Selenium ist ein "Capture and Replay"-Testwerkzeug mit der Möglichkeit zur Spezifizierung der Testfälle. Es wurde zum Testen von Webseiten aus der User Perspektive entwickelt (Blackbox-Test). Mit Hilfe dessen kann man Aktionen wie Eingabe, Link anklicken usw. aufzeichnen, um diese als Test abzuspeichern. Anschließend kann man diese Tests weiterhin anpassen und abspielen.

Fazit

Selenium IDE bietet einen schnellen, einfachen und intuitiven Einstieg in die Testwelt, deshalb ist es für Anfänger geeignet. Für erfahrene Tester ist es ein Werkzeug mithilfe dessen Testfälle schnell erstellt werden können. Weiterführend kann man aufgenommene Tests in Quellcode wie Java umwandeln, um den Test weiter zu spezifizieren. Im Vergleich zu anderen Werkzeugen wie Watij ist Selenium intuitiver und schneller bei der Erstellung von Tests.

Einsatzgebiete

Selenium wird in der Webentwicklung genutzt. Mithilfe dessen kann man als Entwickler den Endkundentest simulieren (BlackBox-Test). Dieser kennt den Quellcode nicht. Im Regelfall testet der Kunde das Produkt selbst durch Beispieleingaben. Mit Selenium kann der Entwicklungsbetrieb solche Tests vorab selbst durchführen.

Einsatzumgebungen

Bei Selenium IDE handelt es sich um ein Plug-In für Firefox. Für die IDE-Version werden keine weiteren Werkzeuge benötigt.

Installation

Es wird als Firefox Plug-In installiert. Die Installationsanleitung steht hier.
Jetzt installieren.

Dokumentation

Für den Schnelleinstieg gibt es auf der Startseite von Selenium ein Intro-Video. Diesen gewährt einen schnellen -und einfachen-Einblick in die Funktionalität von Selenium IDE. Die komplette Dokumentation befindet sich auf der Selenium-Webseite. Diese enthält eine Schritt für Schritt Anleitung zur Installation und eine Erläuterung der Toolbar sowie des Menüs. Die Dokumentation ist zwar auf englisch, doch verständlich.

Wartung der Projektseite

Die Projektseite von Selenium ist gut strukturiert und besitzt einen übersichtlichen Aufbau. Der IDE Zweig wurde bis zur Version 1.0 (2008) entwickelt. Seitdem wurden bis zur aktuellen Version 1.0.6 Feinheiten angepasst (Last Release Notes).

Nutzergruppen und Support

Es gibt eine Official User Group. Hierbei handelt es sich um eine google Group für Selenium. Um eigene Fragen stellen zu können, muss man sich bei google Groups registrieren. Desweiteren ist es möglich, sich im "Internet Relay Chat" (IRC) unter dem Thema "selenium at Freenode" umzuhören, wofür ebenfalls eine Registrierung notwendig ist. Zum Thema Bugs existiert eine Webseite mit einer Auflistung bekannter Bugs. Falls man einen Bug hat, der noch nicht aufgelistet ist, kann man diesen nachtragen. Technischer Support mit direktem Kontakt ist kommerziell. Hierzu stehen das Entwicklerunternehmen sowie sieben weitere Unternehmen zur Verfügung.

Intuitive Nutzbarkeit

Die intuitive Bedienung von Selenium IDE lässt einen unerfahrenen Nutzer ohne jegliche Einarbeitung Testfälle erstellen und abspielen. Man kann Testfälle in der Tabbellenform oder auch im HTML-Format gut bearbeiten. In der Tabellenform ist es einfacher, da das Programm Eingabevorschläge macht. Vielerlei bekommt man bereits mit einfachem Rumprobieren heraus.

Automatisierung

Man kann Test Cases zu einer Test Suite zusammenfassen. Dieses ermöglicht die Zusammenstellung von mehreren Tests. Nachdem man so eine Test Suite erstellt hat, kann man diese durch einen "Play-Button" starten. Somit werden alle Tests sequenziell durchlaufen, ohne dass der Nutzer eingreifen muss. Einzelne Test Cases können ebenfalls durch einen "Play-Button" gestartet werden. Die Tests werden im HTML-Format dargestellt, was die Lesbarkeit erleichtert.

Einführendes Beispiel

Beschreibung:

Als erstes Beispiel wird ein Test Case erstellt (aufgenommen). Anschließend ein zweites Test Case, wobei beim Erstellen des zweiten Test Cases automatisch eine TestSuite anlegt wird. Diese wird dann gespeichert und abgespielt.

Selenium starten:

Firefox=>Extras=>Selenium IDE

Aufnahme:

Beim Start von Selenium ist der Rec-Button bereits aktiviert. Vorsicht bei Änderung der "Base URL" (Eingabeleiste oben). Diese besagt auf welcher URL der Test startet. Beim Start von Selenium wird die aktuelle Seite als Base URL verwendet. Weitere Sub-URLs werden mit relativen Pfaden vermerkt. Somit kann man sofort nach dem Start mit der Aufnahme beginnen. Hierfür führt man Aktionen im Browser aus. Diese können Texteingabe, Weiterleitung durch Links usw. sein. Darüber hinaus kann man mit der rechten Maustaste auf "Textelementen bzw. Bildern"(im Browser) prüfen, ob diese vorhanden sind. Nachdem der Test aufgenommen wurde, sollte der Rec-Button deaktiviert werden. Hier einige Bilder zum besseren Nachvollziehen.

Start

Startzustand von Selenium

Aufnahme von Texteingabe und Klickaktion

Aktionsaufnahme

assertText - Anweisung

assert - Anweisung

Strukturierung:

Um die tabellarische Ansicht besser zu strukturieren, kann man durch die Nutzung der rechten Maustaste auf der gewünschten Position ein leeren Kommentar einfügen.
Achtung: Wenn man statt Kommentar ein Kommando einfügt, können Ausführungsfehler entstehen.

assert - Anweisung

assert - Anweisung

Weitere Tests aufnehmen:

Nachdem der erste Test aufgenommen wurde, möchte man in der Regel weitere Tests aufnehmen. Einen neuen Test Case legt man unter "Datei → New Test Case" an. Nun erscheint links eine zusätzliche Spalte worin die geladenen Test Cases angezeigt werden. Die in der Spalte enthaltenen Test Cases bilden eine TestSuite.

New Test Case

assert - Anweisung

Eine TestSuite

assert - Anweisung

Speichern:

Eine Test Suite ist eine Zusammenfassung von mehreren Test Cases (Testfällen). Sobald man einen zweiten Test Case erstellt bzw. öffnet wird automatisch eine Test Suite (temporär) angelegt. Mit "Save Test Case" speichert man den aktuellen Test Case (In der linken Leiste fett gedruckt). Mit "Save Test Suite" speichert man alle Test Cases die sich in der Test Suite befinden.

assert - Anweisung

Abspielen:

Beim Abspielen gibt es zwei Möglichkeiten. Die erste ist es, den aktuellen (fett gedruckten) Test Case abzuspielen. Die zweite ist es, die gesamte Test Suite abzuspielen. Desweiteren kann man breakpoints (Pause) setzen. Hierfür klickt man mit der rechten Maustaste auf die gewünschte Aktion und "Toggle Breakpoint". Man kann auch während des laufenden Tests Pausen drücken. Aus der pausierten Position kann man den Test entweder "Resume" weiter laufen lassen oder den "Step by Step" durchgehen. Desweiteren lässt sich der Startpunkt durch einen Klick mit der rechten Maustaste auf den gewünschten Schritt und mit "Set/Clear Start Point" an beliebige Stelle im Test setzen.

assert - Anweisung

JSF-Beispiel mit falschem Scope( Request statt Session )

Beischreibung:

Dieses Bespiel basiert auf einer einfachen JSF-Anwendung. Auf der Startseite gibt man seinen Vor -und Nachnamen ein. Anschließend wird man auf eine Begrüßungsseite weiter geleitet. Bei dem Testdurchlauf werden Vor -und Nachname im Request - statt im Session-Scope gespeichert.

korrektes Ausgangsprojekt (Eclipse)

bearbeitetes Projekt mit Flüchtigkeitsfehler (Eclipse)

Scope-Session -> Scope-Request:
myWebProj\WebContent\WEB-INF\faces-config.xml -> Managed Bean -> session in request umschreiben
Beispiel Test Case

Aufnahme

Testaufnahme

assert - Text

assert-Text

Scope - Error (Testdurchlauf)

Die Eingaben wurden nur im Request-Scope gespeichert, -deshalb sind diese auf der Begrüßungsseite nicht mehr vorhanden. Da die Namen nicht vorhanden sind, lässt JSF den ganzen Text weg (Darstellung des null-Wertes).

Scope-Error

Detaillierte Beschreibung

Siehe Dokumentation von Selenium IDE.

Literatur

Zur Literatur

Zurück zur JSF-Werkzeugübersicht
Zurück zu den Werkzeugen
Zurück zur CSI-Hauptseite