Ghost Driver is a pure JavaScript implementation of the WebDriver Wire Protocol for PhantomJS. It's a Remote WebDriver that uses PhantomJS as back-end.
In this talk we will discuss how to use PhantomJS as a backend for RemoteWebDriver. The main purpose is to speed up the execution of test scripts, getting rid of the _bloated heaviness_ of real web browsers, and substitute them with this lightweight headless browser that everyone is talking about.
PhantomJS is a headless WebKit solution which is very fast, it does not suffer from slow browser startup times or other issues you might encounter with browsers. Together with Ivan De Marino’s GhostDriver, we can now run Selenium WebDriver tests with PhantomJS.
Exciting information is trapped in web pages and behind HTML forms. In this tutorial, you'll learn how to parse those pages and when to apply advanced techniques that make scraping faster and more stable. We'll cover parallel downloading with Twisted, gevent, and others; analyzing sites behind SSL; driving JavaScript-y sites with Selenium; and evading common anti-scraping techniques.
The Page Object Pattern is a strong and efficient way to create, maintain and reuse test scripts for testing Web applications. PageObjects bring object oriented programming to test scripts.
Adam Goucher and Frank Cohen discuss Selenium adoption in the enterprise: Selenium best practices, Selenium infrastructure, and the evolution of Selenium IDE and RC. Adam demonstrates what teams are doing wrong when it comes to using Selenium for browser automation.
WebDriver aims to natively drive each browser the best way possible for maximum capability, then hiding those differences between lower level C and C++ APIs, and finally exposing the functionality through the appropriate C/C++ mechanism for each target language, such as using ctypes for Python. With WebDriver's technical approach, anything a user can do is now possible in test automation code.