= whirlwind

* http://github.com/ccyphers/whirlwind

=== Unobstructed QA Browser Automation
=== Through sensible conventions along with cucumber and watir-webdriver


* Centralized location for defining page based elements,
such as links, images, tables, text, etc.

* One can use screen_shot('some image description') from within
rspec step definitions, flows and elements. All images taken
during cucumber's execution are embedded into an html report.

* Flow objects are automatically created for you and accessible from
within rspec step definitions, flows and elements. This includes
flows from all sites, not just the site running for the current cucumber

* A browser instance is automatically instantiated, you never
have to manually call a browser and is accessible through the instance
variable @browser

* Fixture data is automatically loaded into an instance var @test_data and
is accessible from rspec step definitions, flows and elements. @test_data
takes the form:

@test_data[site_name][fixture_file_without_suffix][keys to load from fixture file]

For example, say you want to access a manager in the test environment from a fixture file
located at sites/demo/conf/users.yaml you would:


Note, here 'demo' is used for the site name, but a global vairable $site_name is
also available and set to the site name for feature(s) that are executing.


To create a local snapshot from the current installed version:
whirlwind --snapshot /some/path/

General options:
--environment # set to a name that is used to organize your fixture data.
For example, test, dev, prod
--browser # set to a valid selenium-webdriver supported browser
--site # optional, if the test site name is provided run all features
# for that site. If this is not provided pass a feature file
as the last argument

To execute the example demo site test. This assumes you have started
the demo site located under demo_test_site.

cd /local/snapshot/dir
./bin/whirlwind --site sites/demo --browser ff --environment test

Test results are stored under sites/<site_name>/results.

* Ubuntu
* sudo apt-get install imagemagick libgraphicsmagick1-dev libmagic1 libmagickcore-dev libmagickwand-dev
* sudo apt-get install rmagick
* sudo gem install whirlwind

* Windows
* Install DevKit:
* gem install win32screenshot
* gem install whirlwind

* Install ImageMagick and development headers
* sudo gem install whirlwind

GPLv3: http://www.gnu.org/licenses/gpl.html

Copyright (c) 2011 Cliff Cyphers