Benutzer:Chrisma0: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
Zeile 21: | Zeile 21: | ||
==== Download / Dokumentation ==== |
==== Download / Dokumentation ==== |
||
Die Selenium IDE .xpi (Firefox add-on) ist nicht auf der [https://addons.mozilla.org offiziellen Mozilla Add-ons Webseite] verfügbar, sondern muss direkt von der Selenium [http://seleniumhq.org/download/ Downloadeite] heruntergeladen werden. |
Die Selenium IDE .xpi (Firefox add-on) ist nicht auf der [https://addons.mozilla.org offiziellen Mozilla Add-ons Webseite] verfügbar, sondern muss direkt von der Selenium [http://seleniumhq.org/download/ Downloadeite] heruntergeladen werden. Viele Plugins für die IDE befinden sich jedoch auf der [https://addons.mozilla.org/en-US/firefox/search/?q=selenium Add-on Seite]. Es gibt eine ausführliche [http://seleniumhq.org/docs/02_selenium_ide.html Dokumentation] zur Selenium IDE die die einzelnen Elemente genau erklärt. |
||
==== Einfaches Beispiel ==== |
==== Einfaches Beispiel ==== |
Version vom 17. Mai 2012, 21:24 Uhr
Web Tests mit Selenium
Was ist Selenium
Selenium ist ein Framework für Browserautomatisierung und Testframework für Webapplikationen. Es führt reale Interaktionen mit Webseiten durch. So kann Selenium z.B. automatisch einen Browser öffnen, zu einer URL navigieren, Text eingeben, einen Button anklicken danach testen ob die Fehlermeldung im resultierenden Popup auf der Seite die richtige ist. Damit kann viel normalerweise manuelles, zeitaufwändiges Testen (z.B. das Ausfüllen von Formularen) automatisiert werden. Selenium ist in Java implementiert und verwendet Firefox zur Ausführung der Tests und läuft somit auf allen Plattformen für die es diese Software gibt, inkl. Windows, Linux und Mac.[1]
Vorteile von Selenium
In den häufig eingesetzten Testingframeworks moderner Programmiersprachen, wie JUnit, RSpec etc. werden hauptsächlich Module oder Funktionen getestet. Dieser Ansatz funktioniert auch mit Webapps recht gut, so können z.B. die Controllerfunktionen (in einer Model-View-Controller Architektur) einer Webanwendung getestet werden. Auch die Interaktion per HTTP (GET, POST Requests) kann mit speziellen Bibliotheken recht bequem getestet werden. Bei interaktiven, mit viel Javascript und Ajax geschriebenen Seiten versagt dieser Ansatz. Das Javascript wird ausgeführt und interagiert mit dem Document Object Model (DOM) der Webseite. Dies ist mit den traditionellen Testingframeworks nicht testbar, da das Ausführen von Javascript nicht unterstützt wird. Dies ist verständlich, da sie hauptsächlich für das Testen der Entwicklungssprache gedacht sind. Statt nun Frameworks mit einem Javascriptinterpreter auszurüsten kann mit Selenium der Browser und deren - bereits bestehende und nachweislich funktionierende - HTML-Renderer und Javascript-Engines verwendet werden.
Entwicklung / Geschichte
Selenium wurde ursprünglich 2004 von der amerikanischen Firma ThoughtWorks entwickelt. Das Projekt ist freie Software und steht unter der Apache 2.0 Lizenz.[2]. Das Projekt wird von der Community weiterentwickelt, wobei auch Mitarbeiter von Google zum Projekt beitragen.[3]. Mehrere kommerzielle Firmen bieten Support für den professionellen Einsatz an.[4].
Selenium im Einsatz
Selenium kann in zwei verschiedenen Varianten eingesetzt werden:
- Selenium IDE, ein Firefox Add-on das Browserinteraktionen aufzeichnen und wiedergeben kann und mit dem Tests auch ohne Kenntnisse einer Programmiersprache erstellt werden können. Weiterhin gibt es die Möglichkeiten ausgezeichnete Tests zu bearbeitet (bzw. neue zu schreiben) und diese zu exportieren.
- Selenium WebDriver, eine Sammlung von Selenium-Bindings für die gängisten Programmiersprachen, mit denen Seleniumtests in der Sprache der Wahl geschrieben werden können.
Selenium IDE
IDE soll in diesem Zusammenhang für Integrated Development Environment stehen, d.h. es wird eine komplette integrierte Entwicklungsumgebung für Seleniumtests als Plugin für Firefox zur Verfügung gestellt. Unter anderem bietet die IDE Auswahl von HTML-Elementen per ID, name oder XPath, Autovervollständigung und Debugging per Haltepunkten[5], sowie viele weitere Funktionalität (z.B. einen Screenshot bei Fehlern zu erstellen[6]) durch den Einsatz von Plugins.[7]
Download / Dokumentation
Die Selenium IDE .xpi (Firefox add-on) ist nicht auf der offiziellen Mozilla Add-ons Webseite verfügbar, sondern muss direkt von der Selenium Downloadeite heruntergeladen werden. Viele Plugins für die IDE befinden sich jedoch auf der Add-on Seite. Es gibt eine ausführliche Dokumentation zur Selenium IDE die die einzelnen Elemente genau erklärt.
Einfaches Beispiel
-
Der "Selenium IDE" Eintrag befindet sich im Tools Firefox Menü.
-
Nach dem Start ist der "Aufnahmemodus" (roter Button oben rechts) bereits aktiv.
-
Im Browser können nun Interaktionen mit Webseiten durchgeführt werden. (Hier: Websuche).
-
Danach kann die Aufnahme beendet werden. (Markierter Button).
-
Der aufgezeichnete Test kann wieder abgespielt werden (markierter Button), wobei alle Aktionen im Browser stattfinden.
Selenium WebDriver
Der WebDriver stellt eine objektorientierte API zum Browser dar. WebDriver schickt Befehle direkt an den Browser über dessen eingebaute Automatisierungsschnittstellen.
Quellen
- ↑ Durch Selenium unterstützte Betriebssysteme, abgerufen am 13.05.2012.
- ↑ Selenium Lizenz, abgerufen am 13.05.2012.
- ↑ Mitwirkende von Selenium, abgerufen am 13.05.2012.
- ↑ Kommerzielle Firmen die Selenium-Support anbieten, abgerufen am 17.05.2012.
- ↑ Selenium IDE Features, abgerufen am 17.05.2012.
- ↑ "Screenshot on Fail" v1.0 Selenium Plugin, abgerufen am 17.05.2012.
- ↑ Selenium IDE Plugins Download, abgerufen am 17.05.2012.