Selenium

Nem tévesztendő össze a következővel: szelén.
Selenium

Legfrissebb stabil kiadás4.23.0 (stabil verzió, 2024. július 19.)[1]
Programozási nyelvJava
Operációs rendszerMicrosoft Windows
Kategória
  • test environment
  • szoftverkörnyezet
  • szabad szoftver
  • test automation framework
  • szabad és nyílt forráskódú szoftver
  • programkönyvtár
LicencApache Licenc 2.0
A Selenium weboldala

A Selenium webalkalmazások automatikus tesztelésére szolgáló keretrendszer,[2] melyet a ThoughtWorks cég ír, és szabad szoftverként az Apache 2.0 licenc alatt ad ki. Ez széles körben használható eszköz[3][4] és az egyik legismertebb nyílt forrású teszteszköz.[5]

Seleniummal lehetséges egy webalkalmazásra való hatások felvétele és ezek tetszőlegesen gyakran történő automatikus ellenőrzése. Ez különösen a webalkalmazás-fejlesztők számára csökkentheti a szükséges munkaidőt, például internetes ívek kitöltésekor, így a tesztelést gyorsítja, rugalmasabbá és megbízhatóbbá teszi.

A Selenium csak HTML-en és JavaScripten alapul. Gyors belépéshez telepíthető a Selenium-IDE például Firefox-bővítményként: a felhasználó a Firefoxszal kommunikál, a Selenium felveszi és újra lejátssza a tesztet.

Története

A Seleniumot Jason Huggins hozta létre 2004-ben weblaptesztelésre szolgáló belső programként a ThoughtWorksnél. Később egyre több dolgozó csatlakozott a programhoz, míg végül Paul Hammant a program fejlesztését a mai „Selenium Remote Control“ (RC) felé vezette.

2007-ben Huggins a Google céghez ment, ahol a programot más dolgozókkal együtt fejlesztette tovább és javította. Ugyanekkor Simon Stewart a ThoughtWorksnél létrehozta a Webdrivert. Mivel a két projekt fejlesztőinek nem tűnt értelmesnek két eltérő projekt használata, végül a két projektet „Selenium Webdriver” vagy „Selenium 2.0” néven egyesítették.

2008-ban Philippe Hanrigou létrehozta a Selenium Gridet, mely lehetővé tette több Selenium-példány tetszőleges számú számítógépen való futását. Ez a nagy tesztstruktúrák futásidejét csökkentette.

A Selenium név Huggins azon felismeréséből jött, hogy a Mercury e-mailjére azzal válaszol, hogy a higanymérgezés (angolul: mercury poisoning) szelén (angolul: selenium) bevitelével gyógyítható.

Változatok

Selenium 3

A Selenium 3.0 2016. október 13. óta elérhető. Ebben az alábbi változások jelentek meg:

  • Java: legalább Java 8 szükséges.
  • Webdriver: hibajavítások és egyszerű frissítés lehetséges 2.x-ről.
  • Selenium Grid: hibajavítások és egyszerű frissítés lehetséges 2.x-ről.
  • Webdriver-API-k: csak ezek támogatottak.
  • Selenium RC-API-k: nem támogatottak már, egy „legacy” csomag részei.
  • Firefox-támogatás: Firefox 47.0.1-től szükséges a Mozilla GeckoDriver.

Részei

Selenium Core

A Core modul a Selenium alapfunkcióit, a tesztparancs-API-t és a TestRunnert tartalmazza. Használatával a TestRunner.html weblap több böngészőn is nyitható. Így eltérő böngészőkkel végezhetők kompatibilitási tesztek.

Selenium IDE

A Selenium IDE Google Chrome-, Microsoft Edge- és Mozilla Firefox-bővítmény,[6] mellyel közvetlenül a böngészőben egy webalkalmazással való interakcióval vehetők fel tesztesetek, és ezek újrajátszhatók a böngészőben. A tiszta felvétel–újrajátszás funkciók mellett a verifyjal és az asserttel ellenőrzések is végezhetők. Továbbá a tesztesetek lépésenkénti lejátszása, a töréspontok beállítása tesztesetek ellenőrzéseként és a megosztott tesztek újbóli használata is támogatott. Az egyes tesztesetek kombinálhatók tesztcsomagokká.

Selenium Remote Control (RC) (elavult)

Az RC elavult[7] modul, mely egy szerverpéldányt ad proxyként. E szervert Selenium Client-illesztőprogram irányítja. Ez különböző programozási nyelveken (például Java, .NET, Perl, PHP, Python, Ruby) történhet. Java esetén ezen esetek például JUnittal vagy TestNG-vel kivitelezhetők. GUI-tesztek automatizálása is lehetséges folyamatos integráció mellett.

A Selenium 2-ben az ekkor elavultnak jelölt Selenium RC-t felváltotta a Selenium WebDriver,[8] a Selenium 3-ban az RC „legacy”-csomagba került, és nem tölthető le a projekt lapjáról.[7]

Selenium WebDriver

A Selenium WebDriver a Selenium Remote Control utódja. Elfogad parancsokat Selenese-ben vagy a kliens API-ban. Megjelent benne a HtmlUnit, ami a 3.0 verziótól nem része a WebDrivernek. Ez egy grafikus megjelenítő nélküli böngésző. BrowserDriveren keresztül is megvalósult, ez a legfrissebb böngészőket támogatja.

Selenium Grid

A Selenium Grid a Selenium RC kiterjesztése, és lehetővé teszi tesztek párhuzamos végrehajtását több szerveren a tesztidőtartam csökkentésére. A Selenium Client-illesztőprogram a Selenium Hubbal lép kapcsolatba a Selenium-szerver helyett. A Hub a teszteket szabad szervereken futtatja. A Selenium RC-n elérhető tesztesetek kis változtatásokkal futtathatók Selenium Griddel. A tesztesetek mindkét esetben párhuzamosan futtathatók, például TestNG-vel.

Használat

Számos tesztszoftver épül Seleniumra, például:

  • Protractor, keretrendszer AngularJS-alkalmazások végpontok közti tesztelésére,
  • WebTester, GUI-tesztek automatizálására szolgáló keretrendszer,
  • Appium, nyílt forrású tesztautomatizáló eszköztár natív és hibrid mobilalkalmazásokhoz,
  • BrowserStack, felhőalapú tesztplatform mobil és asztali internetes alkalmazásokhoz

Jegyzetek

  1. Release 4.23.0, 2024. július 19. (Hozzáférés: 2024. július 27.)
  2. Hauptseminar Web Engineering
  3. The Art of Unit Testing: Deutsche Ausgabe Seite 290 Roy Osherove, Mitp-Verlag
  4. Alexander Neumann: Integrationstests: Selenium 3 ist erschienen. Heise online – heise Developer. Heise Medien, 2016. október 14. (Hozzáférés: 2017. február 1.) „eines der meistgenutzten Werkzeuge in der Webentwicklung”
  5. Automatisierte Testverfahren für web-basierte Anwendungen Archiválva 2014. március 26-i dátummal a Wayback Machine-ben (PDF; 944 kB) Oliver Fischer, Masterarbeit am Lehrstuhl für Datenstrukturen und Softwarezuverlässigkeit der BTU Cottbus
  6. Selenium IDE (angol nyelven). (Hozzáférés: 2023. március 10.)
  7. a b Selenium 3 is Coming (angol nyelven), 2016. október 4. (Hozzáférés: 2016. október 15.)
  8. Selenium Homepage. (Hozzáférés: 2016. július 29.)

Fordítás

Ez a szócikk részben vagy egészben a Selenium című német Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Források

  • Michael 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

További információk

  • Hivatalos weboldal
  • Selenium-blogok listája és összefoglalói Archiválva 2016. április 2-i dátummal a Wayback Machine-ben
  • A Selenium elemzése és értékelése Archiválva 2016. május 30-i dátummal a Wayback Machine-ben
Nemzetközi katalógusok