Selenium WebDriver besteht aus der Core Java API und ist auch als Selenium 2 bekannt.
Ghost Driver ist eine reine JavaScript-Implementierung des WebDriver Wire-Protokolls für PhantomJS. Es ist ein Remote WebDriver, der PhantomJS als Back-End verwendet.
WebDriver
Implementierung für PhantomJs
ist GhostDriver
Der Selenium2
-Treiber lädt und startet tatsächlich eine aktive Browsersitzung und manipuliert den Browser so, wie es ein Mensch tun würde. ZombieJS
ist ein "kopfloser" Browser, der alle Funktionen eines normalen Browsers bietet, jedoch ohne eine Display-Oberfläche. Ohne die zusätzliche Zeit, die darauf wartet, dass das Display tatsächlich gerendert wird, kann ein kopfloser Browser wie ZombieJS
viel schneller laufen als ein normaler Browser, so dass 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
l - ü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, für die Node.js oder andere Abhängigkeiten nicht installiert werden müssen. Sie wird mit einem eigenen ' Ghost Driver
' für die Implementierung des WebDriver Wire-Protokolls geliefert. 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
Auch wenn es nicht erforderlich ist, das neueste PhantomJS auszuführen, ist es eine gute Idee, Selenium2 zu installieren, damit Sie es in anderen Browsern testen können.
Tags und Links java selenium selenium-webdriver ghostdriver differentiation