8

Ich möchte den Unterschied zwischen Selenium Webdriver und Selenium Ghostdriver wissen.Was ist der Unterschied zwischen Selenium Webdriver und Selenium Ghostdriver?

Ich bin auch verwirrt, warum Selen Ghostdriver verwendet wird?

Bitte geben Sie mir eine kurze Idee.

Vielen Dank im Voraus.

+1

Ich brauche keine sehr breite Antwort. Nur Pron und Kontras mit wenig Unterschied ist in Ordnung. – Sagar007

+0

Ghostdriver IS-A Webdriver :-) Auch das [Tag-Wiki für Ghostdriver] (http://stackoverflow.com/tags/ghostdriver/info) gibt eine einfache Erklärung. – nfechner

+0

Danke @nfechner :) – Sagar007

Antwort

13

Selen WebDriver besteht aus Core Java API gemacht und es auch als Selen 2

Geist-Treiber ist eine reine JavaScript-Implementierung der WebDriver Wire Protocol für PhantomJS bekannt ist. Es ist ein Remote WebDriver, der PhantomJS als Back-End verwendet.

WebDriver Implementierung für PhantomJs ist GhostDriver Architecture of GhostDriver

Der Selenium2 Fahrer tatsächlich lädt und führt eine aktive Browser-Sitzung, um den Browser zu manipulieren nur als Mensch tun würde. ZombieJS ist ein "kopfloser" Browser, der alle Funktionen eines normalen Browsers bietet, jedoch ohne Display-Schnittstelle. Ohne die zusätzliche Zeit, die darauf wartet, dass das Display tatsächlich gerendert wird, kann ein kopfloser Browser wie ZombieJS viel schneller als ein normaler Browser ausgeführt werden, sodass Tests in weniger als der Hälfte der Zeit ausgeführt werden. Aber ZombieJS erfordert die Installation von Node.js und kann ein wenig fehlerhaft sein, und es hat eine eigene API (die Vor- und Nachteile hat). Der Selenium2-Treiber ist gut getestet und implementiert eine Standard-API - die WebDriver Wire Protoco - über alle Browser, für die er Treiber hat.

Jetzt gibt es einen kopflosen Browser, der eine WebDriver Wire Protocol-Implementierung enthält - PhantomJS. Die neueste Version von PhantomJS ist eine einfach zu installierende, eigenständige Binärdatei, die keine Installation von Node.js oder anderen Abhängigkeiten erfordert. Sie wird mit der eigenen Version zur Implementierung des WebDriver-Drahtprotokolls ausgeliefert. Das heißt, Sie können es mit dem Selenium2-Treiber in Codeception steuern und alles, was Sie in Chrome, Firefox, Safari oder IE mit Selenium2 testen können, können Sie jetzt in der Hälfte der Zeit mit PhantomJS

testen, obwohl es nicht benötigt wird Um das neueste PhantomJS zu starten, ist es eine gute Idee, Selenium2 zu installieren, damit Sie es in anderen Browsern testen können.

+0

Kannst du bitte mehr ausarbeiten? – Sagar007

+0

Oh vielen Dank. Wie ich Selen verstehe, ist HTMLUnit auch Headless-Browser. Aber es unterstützt kein Java Script. So kann Selen GhostDriver es unterstützen? – Sagar007