WebPilot
Introduction
WebPilot is a wrapper for Selenium::WebDriver that makes the library more ruby-esque. Rather than inherit from Selenium::WebDriver, an instance of WebPilot has a Selenium::WebDriver instance as an attribute. It serves other functions rather than just extending Selenium::WebDriver, so it also wraps a Logger, saves screenshots, etc.
Compatibility
WebPilot is tested on the following platforms:
- ruby-1.9.3 on Linux
That is all.
Roadmap
- Way More Tests :P
- screenshot functionality
- All of the Approximations from KaikiFS...
Installation
gem install webpilot
Contributing
Please do! Contributing is easy. Please read the CONTRIBUTING.md document for more info. ... When it exists.
Usage
WebPilot is meant to be used primarily as a helper for using Selenium with Cucumber, so that your step definitions are as short as possible, and never have to rescue from a Selenium exception.
require 'webpilot'
pilot = WebPilot.new(options)
WebPilot.new options
-
:browsershould be one of the browsers supported by WebDriver.for -
:is_headlessshould be a boolean, indicating whether to useSelenium::WebDrivershould run under a headless X display, using the headless gem. -
:loggercan be one of several things:-
nilwill instantiate a logger that writes to/dev/null -
"STDOUT"will instantiate a logger toSTDOUT -
"STDERR"will instantiate a logger toSTDERR - an object that appears to be a
Loggerwill then be assigned to@logger, not instantiating anything new
-
-
:pause_timeshould be a Numeric (Fixnum or Float), representing the number of seconds that a call to#pausewill pause for. -
:screenshot_diris... not quite used yet. Stay tuned! -
:timeoutis the default number of seconds that a Wait object should wait for.
Versioning
WebPilot follows Semantic Versioning (at least approximately) version 2.0.0-rc1.
License
Please see LICENSE.md.