Use the Automation instrument to automate user interface tests for your iOS app through test scripts that you write. These scripts simulate user actions by calling UI Automation, a JavaScript programming interface that specifies actions to be performed in your app as it runs. During the tests, the system returns log information to you.
Test any IOS native, hybrid, or mobile web application using the Selenium / Webdriver API. IOS automation is as easy as automation for a browser, due to reuse of the well known API. You can reuse the helper classes from your web tests to i.e. create data, and follow the same design patterns you're used to (Page Object etc.).
BromBone is the absolute easiest way to use a headless web browser. No installation, nothing to configure.
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.
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.