This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 01f87b5c3bff6815e17e5728164f82c8d7560a9a
tree 262418fb7ccda94ab29f08924375badbf5347848
parent 9b90fe3c577aa285fe093f7bf39c1963313089d3 parent 2c61102f1b41e094c74c589d6679f65003c42e4e
tree 262418fb7ccda94ab29f08924375badbf5347848
parent 9b90fe3c577aa285fe093f7bf39c1963313089d3 parent 2c61102f1b41e094c74c589d6679f65003c42e4e
webrat /
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Mon Apr 28 01:57:46 -0700 2008 | [brynary] |
| |
History.txt | Sun May 11 21:48:01 -0700 2008 | [brynary] |
| |
MIT-LICENSE.txt | Sun Mar 02 16:35:46 -0800 2008 | [brynary] |
| |
Manifest.txt | Sun May 04 20:44:00 -0700 2008 | [lukemelia] |
| |
README.txt | Mon Apr 28 18:59:56 -0700 2008 | [Josh Knowles] |
| |
Rakefile | Sun May 11 21:58:24 -0700 2008 | [brynary] |
| |
TODO.txt | Sun Mar 02 17:06:43 -0800 2008 | [brynary] |
| |
init.rb | Sun Mar 02 12:14:52 -0800 2008 | [brynary] |
| |
install.rb | Sun Mar 02 12:14:52 -0800 2008 | [brynary] |
| |
lib/ | Sun Jul 20 19:04:15 -0700 2008 | [brynary] |
| |
mechanize_spike.rb | Sun May 11 21:42:43 -0700 2008 | [brynary] |
| |
selenium_spike.rb | Sun Jun 15 22:11:02 -0700 2008 | [lukemelia] |
| |
spec/ | Sun Jul 20 18:58:32 -0700 2008 | [brynary] |
README.txt
Webrat ====== - [Code on GitHub](http://github.com/brynary/webrat) - [Tickets on Lighthouse](http://webrat.lighthouseapp.com/) Description ----------- Webrat (_Ruby Acceptance Testing for Web applications_) lets you quickly write robust and thorough acceptance tests for a Ruby web application. By leveraging the DOM, it can run tests similarly to an in-browser testing solution without the associated performance hit (and browser dependency). The result is tests that are less fragile and more effective at verifying that the app will respond properly to users. When comparing Webrat with an in-browser testing solution like Watir or Selenium, the primary consideration should be how much JavaScript the application uses. In-browser testing is currently the only way to test JS, and that may make it a requirement for your project. If JavaScript is not central to your application, Webrat is a simpler, effective solution that will let you run your tests much faster and more frequently. Initial development was sponsored by [EastMedia](http://www.eastmedia.com). Synopsis -------- def test_sign_up visits "/" clicks_link "Sign up" fills_in "Email", :with => "good@example.com" selects "Free account" clicks_button "Register" ... end Behind the scenes, this will perform the following work: 1. Verify that loading the home page is successful 2. Verify that a "Sign up" link exists on the home page 3. Verify that loading the URL pointed to by the "Sign up" link leads to a successful page 4. Verify that there is an "Email" input field on the Sign Up page 5. Verify that there is an select field on the Sign Up page with an option for "Free account" 6. Verify that there is a "Register" submit button on the page 7. Verify that submitting the Sign Up form with the values "good@example.com" and "Free account" leads to a successful page Take special note of the things _not_ specified in that test, that might cause tests to break unnecessarily as your application evolves: - The input field IDs or names (e.g. "user_email" or "user[email]"), which could change if you rename a model - The ID of the form element (Webrat can do a good job of guessing, even if there are multiple forms on the page.) - The URLs of links followed - The URL the form submission should be sent to, which could change if you adjust your routes or controllers - The HTTP method for the login request A test written with Webrat can handle these changes to these without any modifications. Install ------- To install the latest release: sudo gem install webrat In your stories/helper.rb: require "webrat" You could also unpack the gem into vendor/plugins. Requirements ------------ - Rails >= 1.2.6 - Hpricot >= 0.6 - Rails integration tests in Test::Unit _or_ - RSpec stories (using an RSpec version >= revision 2997) Authors ------- - Maintained by [Bryan Helmkamp](mailto:bryan@brynary.com) - Original code written by [Seth Fitzsimmons](mailto:seth@mojodna.net) - Many other contributors. See attributions in History.txt License ------- Copyright (c) 2007 Bryan Helmkamp, Seth Fitzsimmons. See MIT-LICENSE.txt in this directory.




