www.wikidata.de-de.nina.az
Dieser Artikel behandelt die Software Zum chemischen Element siehe Selen Selenium ist ein Framework fur automatisierte Softwaretests von Webanwendungen 2 die von einem Programmiererteam der Firma ThoughtWorks entwickelt und als freie Software unter der Apache 2 0 Lizenz veroffentlicht wurde Es ist ein weit verbreitetes Werkzeug 3 4 und zahlt zu den bekanntesten quelloffenen Testwerkzeugen 5 SeleniumBasisdatenEntwickler ThoughtWorksErscheinungsjahr 2004Aktuelle Version 4 12 0 1 31 August 2023 Betriebssystem Microsoft Windows Linux macOS Solaris FreeBSD und andere Unix Varianten basiert auf Java Programmiersprache JavaLizenz Apache Lizenz 2 0selenium devMit Selenium ist es moglich Interaktionen mit einer Webanwendung aufnehmen zu lassen und diese Tests automatisiert beliebig oft zu wiederholen Es kann vor allem Entwicklern von Webanwendungen sehr viel Tipparbeit abnehmen beispielsweise beim Ausfullen von Webformularen und macht das Testen dadurch schneller flexibler und verlasslicher Selenium basiert rein auf HTML und JavaScript Fur einen schnellen Einstieg kann direkt die Selenium IDE z B als Firefox Add on installiert und getestet werden Der Benutzer interagiert nur mit Firefox Selenium nimmt den Test auf und spielt ihn wieder ab Inhaltsverzeichnis 1 Geschichte 2 Versionen 2 1 Selenium 3 3 Bestandteile 3 1 Selenium Core 3 2 Selenium IDE 3 3 Selenium Remote Control RC veraltet 3 4 Selenium WebDriver 3 5 Selenium Grid 4 Verwendung 5 Literatur 6 Weblinks 7 EinzelnachweiseGeschichte BearbeitenDie Entstehung von Selenium begrundete Jason Huggins 2004 als er ein internes Programm zum Testen von Webseiten bei seiner Firma ThoughtWorks schrieb Im Laufe der Zeit schlossen sich immer mehr Mitarbeiter von ThoughtWorks seiner Arbeit an bis schliesslich Paul Hammant dem Team beitrat und die Entwicklung des Programms in die Richtung des heutigen Selenium Remote Control RC leitete 2007 wechselte Huggins zum Softwarekonzern Google wo er die Weiterentwicklung und die Fehlerausbesserung des Programms zusammen mit anderen Programmierern vorantrieb Zur gleichen Zeit entwickelte Simon Stewart bei ThoughtWorks die Browsersteuerung Webdriver Da es fur die Entwickler beider Projekte nicht sinnvoll erschien zwei separate Projekte voranzutreiben beschlossen sie die beiden Projekte zu Selenium Webdriver oder Selenium 2 0 zu vereinen 2008 entwickelte Philippe Hanrigou Selenium Grid welches erlaubt mehrere Selenium Instanzen gleichzeitig auf einer unbegrenzten Anzahl an Rechnern laufen zu lassen Dies fuhrte dazu dass die Ausfuhrungszeit fur grosse Teststrukturen dramatisch verkurzt wurden Der Name Selenium entstand aus einer scherzhaften Bemerkung von Huggins der in einer E Mail seine Mitbewerber Mercury damit verspottet dass er erwahnt dass eine Quecksilbervergiftung mercury poisoning durch die Einnahme von Selen selenium geheilt werden kann Versionen BearbeitenSelenium 3 Bearbeiten Die finale Version 3 0 ist seit dem 13 Oktober 2016 verfugbar Dort sind unter anderem folgende Anderungen oder Neuerungen enthalten Java Minimale Version ist Java 8 WebDriver Nutzer Fehlerkorrekturen und einfaches Update von Version 2 x moglich Selenium Grid Nutzer Fehlerkorrekturen und einfaches Update von Version 2 x moglich WebDriver APIs Nur diese APIs werden noch unterstutzt Selenium RC APIs Keine Unterstutzung mehr Teil eines legacy Pakets Firefox Unterstutzung Ab Firefox 47 0 1 wird Mozillas GeckoDriver benotigt Bestandteile BearbeitenSelenium Core Bearbeiten Das Core Modul enthalt die komplette Basisfunktionalitat von Selenium also das Testbefehl API und den TestRunner Unter Verwendung des Core Modules kann die TestRunner html Webseite mit verschiedenen Browsern geoffnet werden Dadurch werden Kompatibilitatstests mit verschiedenen Browsertypen moglich Selenium IDE Bearbeiten Selenium IDE ist ein Add on fur Google Chrome Microsoft Edge und Mozilla Firefox 6 mit dem es moglich ist direkt im Browser durch die Interaktion mit einer Webanwendung Testfalle aufzunehmen und diese im Browser wieder abzuspielen Neben der reinen Capture Replay Funktionalitat lassen sich Uberprufungen mittels verify und assert einbinden Zudem wird das schrittweise Abspielen von Testfallen das Setzen von Breakpoints zur Uberprufung der Testfalle und die Wiederverwendung von geteilten Testablaufen unterstutzt Einzelne Testfalle lassen sich zu Testsuites kombinieren Selenium Remote Control RC veraltet Bearbeiten RC ist ein veraltetes 7 Modul das eine eigene Server Instanz in Form eines Proxys bereitstellt Dieser Selenium Server wird von einem Selenium Client Treiber ferngesteuert Dies kann in unterschiedlichen Programmiersprachen geschehen wie z B in Java NET Perl PHP Python Ruby Bei Java lassen sich diese Testfalle beispielsweise mittels JUnit oder TestNG ausfuhren Es ermoglicht die Testautomatisierung von GUI Tests in Kombination mit kontinuierlicher Integration Mit dem Release von Selenium 2 wurde Selenium RC von Selenium WebDriver abgelost und als veraltet gekennzeichnet 8 mit Release von Selenium 3 wurde RC in ein legacy Paket verschoben und steht auf der Hauptseite des Projekts nicht mehr zum Herunterladen zur Verfugung 7 Selenium WebDriver Bearbeiten Selenium WebDriver ist der Nachfolger von Selenium Remote Control Er akzeptiert Befehle in Selenese oder uber das Client API und leitet sie an einen Browser weiter Eine Besonderheit bildet HtmlUnit Ab Version 3 0 ist HtmlUnit nicht mehr Bestandteil des WebDrivers Dies ist ein Webbrowser ohne grafische Anzeige headless Implementiert ist der Selenium WebDriver uber BrowserDriver wobei die gangigsten Browser unterstutzt werden Selenium Grid Bearbeiten Selenium Grid ist eine Erweiterung von Selenium RC und ermoglicht die parallele Ausfuhrung von Tests auf mehreren Servern um die Dauer der Testdurchfuhrung zu verkurzen Der Selenium Client Treiber verbindet sich dabei mit der Komponente Selenium Hub anstatt mit dem Selenium Server Der Hub wiederum leitet die Tests auf freie Selenium Server weiter Vorhandene Testfalle fur Selenium RC konnen mit geringen Anderungen auch mit Selenium Grid verwendet werden Die Testfalle sind jedoch parallel auszufuhren z B mit TestNG Verwendung BearbeitenDiverse Softwareprodukte im Testing Umfeld setzen auf Selenium auf z B Protractor ein Framework fur Ende zu Ende Tests von AngularJS Anwendungen WebTester ein Framework zur Automatisierung von GUI Tests Appium ein Open Source Testautomatisierungswerkzeug fur native und hybride mobile Anwendungen Apps BrowserStack eine Cloud basierte Testplattform fur mobile und Desktop InternetanwendungenLiteratur BearbeitenMichael Kain Selenium Web Applikationen automatisiert testen Open Source Press 2008 ISBN 978 3 937514 57 4 Unmesh Gundecha Selenium 2 Cookbook 2012 ISBN 978 1 84951 574 0 David Burns Selenium 2 0 Testing Tools Beginner s Guide 2012 ISBN 978 1 84951 830 7 C Titus Brown Gheorghe Gheorghiu Jason Huggins An Introduction to Testing Web Applications with twill and Selenium O Reilly 2007 ISBN 978 0 596 52780 8 Alan John Richardson Selenium Simplified Compendium Developments 2010 ISBN 978 0 9567332 1 4 Selenium Testing Tools Interview Questions You ll Most Likely Be Asked CreateSpace Independent Publishing 2019 ISBN 978 1 4637 6813 3 Weblinks BearbeitenOffizielle Website Liste und Newsfeed aller Selenium Blogs Analyse und Bewertung des Tools SeleniumEinzelnachweise Bearbeiten Release 4 12 0 31 August 2023 abgerufen am 19 September 2023 Hauptseminar Web Engineering The Art of Unit Testing Deutsche Ausgabe Seite 290 Roy Osherove Mitp Verlag Alexander Neumann Integrationstests Selenium 3 ist erschienen In Heise online heise Developer Heise Medien 14 Oktober 2016 abgerufen am 1 Februar 2017 eines der meistgenutzten Werkzeuge in der Webentwicklung Automatisierte Testverfahren fur web basierte Anwendungen PDF 944 kB Oliver Fischer Masterarbeit am Lehrstuhl fur Datenstrukturen und Softwarezuverlassigkeit der BTU Cottbus Selenium IDE Abgerufen am 10 Marz 2023 englisch a b Selenium 3 is Coming 4 Oktober 2016 abgerufen am 15 Oktober 2016 englisch Ankundigung von Selenium 3 im Blog der Entwickler Selenium Homepage Abgerufen am 29 Juli 2016 Normdaten Sachbegriff GND 7712939 8 lobid OGND AKS Abgerufen von https de wikipedia org w index php title Selenium amp oldid 238376608