Mi a Selenium WebDriver? Különbség az RC-vel

Tartalomjegyzék:

Anonim

Mi a Selenium Webdriver?

A Selenium Webdriver egy nyílt forráskódú API-gyűjtemény, amelyet webalkalmazások tesztelésére használnak. A Selenium Webdriver eszköz a webalkalmazások tesztelésének automatizálására szolgál annak ellenőrzésére, hogy az elvárt módon működik-e. Főleg olyan böngészőket támogat, mint a Firefox, a Chrome, a Safari és az Internet Explorer. Ez lehetővé teszi a böngészők közötti tesztelés végrehajtását is.

A WebDriver programozási nyelv használatát is lehetővé teszi a teszt parancsfájlok létrehozásakor (a Selenium IDE-ben nem lehetséges).

Most már használhat olyan feltételes műveleteket, mint az if-then-else vagy switch-case. Hurkolást is végezhet, mint a do-while.

A következő programozási nyelveket támogatja a WebDriver

  • Jáva
  • .Háló
  • PHP
  • Piton
  • Perl
  • Rubin

Nem kell mindegyiket ismernie. Csak tudnod kell egyben. Ebben az oktatóanyagban azonban Java-t és Eclipse-t fogunk használni IDE-ként.

Különbség a Selenium RC és a Webdriver között

A WebDriver 2006-os megjelenése előtt volt egy másik automatizálási eszköz, a Selenium Remote Control néven. A WebDriver és a Selenium RC egyaránt a következő tulajdonságokkal rendelkeznek:

  • Mindkettő lehetővé teszi, hogy programozási nyelvet használjon a teszt szkriptek megtervezéséhez.
  • Mindkettő lehetővé teszi a tesztek futtatását különböző böngészőkön.

Tehát miben különböznek egymástól? Beszéljük meg a válaszokat.

1. Építészet

A WebDriver felépítése egyszerűbb, mint a Selenium RC-ké .

  • Az operációs rendszer szintjén vezérli a böngészőt
  • Mindössze a programozási nyelv IDE-jére (amely tartalmazza a Selenium parancsokat) és egy böngészőre van szükség.
A Selenium RC felépítése sokkal bonyolultabb.
  • A tesztelés megkezdése előtt először el kell indítania egy Selenium Remote Control (RC) Server nevű külön alkalmazást
  • A Selenium RC Server "közvetítőként" működik a Selenium parancsok és a böngésző között
  • A tesztelés megkezdésekor a Selenium RC Server "befecskendez" egy Selenium Core nevű Javascript programot a böngészőbe.
  • Az injekció beadása után a Selenium Core elkezdi kapni az RC szerver által továbbított utasításokat a tesztprogramtól.
  • Amikor az utasításokat megkapja, a Selenium Core Javascript parancsként hajtja végre őket.
  • A böngésző engedelmeskedik a Selenium Core utasításainak, és válaszát továbbítja az RC szervernek.
  • Az RC szerver megkapja a böngésző válaszát, majd megjeleníti az eredményeket Önnek.
  • Az RC Server lekéri a következő parancsot a tesztfájlból, hogy megismételje az egész ciklust.

2. Sebesség

A WebDriver gyorsabb, mint a Selenium RC, mivel közvetlenül a böngészővel beszél, a böngésző a saját böngészőjét használja a vezérléshez.

A Selenium RC lassabb, mivel a Selenium Core nevű Javascript programot használja. Ez a szelénmag az, amely közvetlenül a böngészőt vezérli, nem pedig Ön.

3. Valós élet interakciója

A WebDriver reálisabban interakcióba lép az oldalelemekkel. Például, ha egy letiltott szövegmező van egy tesztelt oldalon, akkor a WebDriver valóban nem írhat be semmilyen értéket, mint ahogyan egy valódi ember nem.

A Selenium Core, csakúgy, mint a többi JavaScript-kód, hozzáférhet a letiltott elemekhez. Korábban a szeléntesztelők panaszkodtak arra, hogy a szelénmag a tesztjeik során képes volt értékeket beírni egy letiltott szövegmezőbe. Különbségek az API-ban

4. API

A Selenium RC API-ja érettebb, de redundanciákat és gyakran zavaró parancsokat tartalmaz . Például a tesztelők legtöbbször értetlenkednek, hogy a type vagy typeKeys-t használják; vagy a click, mouseDown vagy mouseDownAt használatát. Rosszabb esetben a különböző böngészők ezeket a parancsokat is különböző módon értelmezik!

A WebDriver API-ja egyszerűbb, mint a Selenium RC-k . Nem tartalmaz redundáns és zavaró parancsokat.

5. Böngésző támogatás

A WebDriver támogatja a fej nélküli HtmlUnit böngészőt

A HtmlUnit-t "fej nélküli" -nek nevezik, mivel ez egy láthatatlan böngésző - GUI-nélküli.

Ez egy nagyon gyors böngésző, mert nem tölt el időt az oldalelemek betöltésének megvárása. Ez felgyorsítja a teszt végrehajtási ciklusait.

Mivel a felhasználó számára láthatatlan, csak automatizált eszközökkel vezérelhető.

A Selenium RC nem tudja támogatni a fej nélküli HtmlUnit böngészőt. A működéséhez valódi, látható böngészőre van szüksége.

A WebDriver korlátai

A WebDriver nem tudja könnyen támogatni az új böngészőket

Ne feledje, hogy a WebDriver operációs rendszer szinten működik. Ne feledje, hogy a különböző böngészők különböző módon kommunikálnak az operációs rendszerrel. Ha új böngésző jelenik meg, akkor az más operációs rendszerrel való kommunikáció folyamata eltérhet más böngészőktől. Tehát elég időt kell adnia a WebDriver csapatának, hogy kitalálja ezt az új folyamatot, mielőtt a következő WebDriver kiadásban megvalósíthatnák.

A WebDriver fejlesztői csoportjának feladata azonban eldönteni, támogatják-e az új böngészőt vagy sem.

A Selenium RC beépített teszt eredménygenerátort tartalmaz

A Selenium RC automatikusan létrehoz egy HTML fájlt a teszt eredményeiről . A jelentés formátumát maga az RC állította be. Vessen egy pillantást a jelentés alábbi példájára.

A WebDriver nem rendelkezik beépített paranccsal, amely automatikusan létrehoz egy teszt eredményfájlt . Az IDE kimeneti ablakára kell támaszkodnia, vagy saját maga kell megterveznie a jelentést a programozási nyelv képességeinek felhasználásával, és szövegként, HTML-ként stb.

Összegzés

  • A WebDriver egy olyan eszköz, amely különböző böngészőkben teszteli a webalkalmazásokat különböző programozási nyelvek segítségével.
  • Most már képes hatékony teszteket végezni, mert a WebDriver lehetővé teszi, hogy a tesztek megtervezéséhez az Ön által választott programozási nyelvet használja .
  • A WebDriver egyszerűbb architektúrája miatt gyorsabb, mint a Selenium RC .
  • A WebDriver közvetlenül beszél a böngészővel, míg a Selenium RC-nek ehhez az RC Server segítségére van szüksége.
  • A WebDriver API-ja tömörebb, mint a Selenium RC-k.
  • A WebDriver támogatja a HtmlUnit funkciót, míg a Selenium RC nem.
  • A WebDriver egyetlen hátránya:
    • Nem tudja könnyen támogatni az új böngészőket , de a Selenium RC igen.
    • Nem rendelkezik beépített paranccsal a teszt eredmények automatikus előállításához.