Webrat - Ruby Acceptance Testing for Web applications
Go to file
Noah Davis 80ea640901 Fix selenium webrat tests in FF/Safari -- locatedLabel.htmlFor returns empty string in FF/Safari which breaks location strategy for label 2010-04-20 23:46:43 -04:00
lib Fix selenium webrat tests in FF/Safari -- locatedLabel.htmlFor returns empty string in FF/Safari which breaks location strategy for label 2010-04-20 23:46:43 -04:00
spec Fix Mechanize spec. 2010-04-13 13:25:28 -03:00
vendor Replaced selenium standalone jar to fix Snow Leopard + Firefox 3.5 issue 2010-01-17 20:30:55 -05:00
.document Adding .document RDoc config file 2008-11-25 01:04:26 -05:00
.gitignore Use Bundler for managing dependencies needed to run the tests 2009-11-13 17:41:33 -05:00
Gemfile Use simple Thor tasks for release management instead of Jeweler 2009-11-15 15:49:38 -05:00
History.txt Move verbose selenium output that can clutter build output behind setting 2010-04-20 11:44:55 -04:00
MIT-LICENSE.txt Add hoe for gem support 2008-03-02 19:35:46 -05:00
README.rdoc updated from master 2008-12-27 17:22:51 -06:00
Rakefile Some explicit requires of RubyGems are necessary for integration tests. 2010-04-12 23:30:56 -03:00
Thorfile Added missing dependency "rack-test" to gemspec (LH #339) 2010-01-17 20:42:37 -05:00
install.rb Adding gemspec. Hopfully gem will build on GitHub now 2008-11-24 20:34:10 -05:00
webrat.gemspec Bumping version to prerelease until next official release 2010-01-17 20:48:23 -05:00

README.rdoc

= Webrat - Ruby Acceptance Testing for Web applications

- http://gitrdoc.com/brynary/webrat
- http://groups.google.com/group/webrat
- http://webrat.lighthouseapp.com/
- http://github.com/brynary/webrat
- #webrat on Freenode

== Description

Webrat lets you quickly write expressive and robust acceptance tests for a Ruby
web application. 

== Features

* Browser Simulator for expressive, high level acceptance testing without the
  performance hit and browser dependency of Selenium or Watir (See Webrat::Session)
* Use the same API for Browser Simulator and real Selenium tests using
  Webrat::Selenium when necessary (eg. for testing AJAX interactions)
* Supports multiple Ruby web frameworks: Rails, Merb and Sinatra
* Supports popular test frameworks: RSpec, Cucumber, Test::Unit and Shoulda
* Webrat::Matchers API for verifying rendered HTML using CSS, XPath, etc.

== Example

  class SignupTest < ActionController::IntegrationTest
  
    def test_trial_account_sign_up
      visit home_path
      click_link "Sign up"
      fill_in "Email", :with => "good@example.com"
      select "Free account"
      click_button "Register"
    end
    
  end
  
Behind the scenes, Webrat will ensure:

* If a link, form field or button is missing, the test will fail.
* If a URL is invalid, the test will fail.
* If a page load or form submission is unsuccessful, the test will fail.

== Installing Nokogiri

Users of Debian Linux (e.g. Ubuntu) need to run:

  sudo apt-get install libxslt1-dev libxml2-dev.

Otherwise the Nokogiri gem, which Webrat depends on, won't install properly.

== Install for Rails

To install the latest release as a gem:

  sudo gem install webrat
  
To install the latest code as a plugin: (_Note:_ This may be less stable than using a released version)

  script/plugin install git://github.com/brynary/webrat.git

In your test_helper.rb or env.rb (for Cucumber) add:

  require "webrat"
  
  Webrat.configure do |config|
    config.mode = :rails
  end
  
== Install with Merb

Merb 1.0 has built-in, seamless Webrat support. Just start using
methods from Webrat::Session in your specs.

== Authors

- Maintained by {Bryan Helmkamp}[mailto:bryan@brynary.com]
- Original code written by {Seth Fitzsimmons}[mailto:seth@mojodna.net]
- Initial development was sponsored by EastMedia[http://www.eastmedia.com]
- Many other contributors. See attributions in History.txt

== License

Copyright (c) 2007-2008 Bryan Helmkamp, Seth Fitzsimmons.
See MIT-LICENSE.txt in this directory.