public
Fork of brynary/webrat
Description: Webrat - Ruby Acceptance Testing for Web applications
Homepage: http://gitrdoc.com/brynary/webrat/tree/master/
Clone URL: git://github.com/aiwilliams/webrat.git
webrat /
name age message
file .document Mon Nov 24 22:04:26 -0800 2008 Adding .document RDoc config file [brynary]
file .gitignore Mon May 11 13:51:57 -0700 2009 Ignore *.log [brynary]
file History.txt Wed Jul 08 11:06:03 -0700 2009 History [brynary]
file MIT-LICENSE.txt Sun Mar 02 16:35:46 -0800 2008 Add hoe for gem support [brynary]
file README.rdoc Sat Dec 27 15:22:51 -0800 2008 updated from master [gaffo]
file Rakefile Sun Jun 14 21:46:56 -0700 2009 Add JRuby to "rake multiruby" [brynary]
file install.rb Mon Nov 24 17:34:10 -0800 2008 Adding gemspec. Hopfully gem will build on GitH... [brynary]
directory lib/ Loading commit data...
directory spec/
directory vendor/ Mon Jul 06 10:43:31 -0700 2009 Update Selenium RC Server to version 1.0.1 [brianjlandau]
README.rdoc

Webrat - Ruby Acceptance Testing for Web applications

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

License

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