SkillAgentSearch skills...

Webrat

Webrat - Ruby Acceptance Testing for Web applications

Install / Use

/learn @brynary/Webrat
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

= Webrat {<img src="https://codeclimate.com/badge.png" />}[https://codeclimate.com/github/brynary/webrat]

  • http://rdoc.info/github/brynary/webrat/master/frames
  • 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.

View on GitHub
GitHub Stars1.5k
CategoryDevelopment
Updated1mo ago
Forks274

Languages

Ruby

Security Score

95/100

Audited on Feb 20, 2026

No findings