Selenium is a very good framework for testing web applications. It's an ideal tool to use when you want to test your Rails apps from a user perspective. There is a Selenium on Rails plugin that simplifies creating and running Selenium tests.
Step 1. Create a Rails app and install the Selenium on Rails plugin
rails selenium_rocks
cd selenium_rocks
script/plugin install http://svn.openqa.org/svn/selenium-on-rails/selenium-on-rails
(it may take a while)
Step 2. Configuration
Create vendor/plugins/selenium-on-rails/config.yml file and paste the following:
environments:
- test
browsers:
safari: '/Applications/Safari.app/Contents/MacOS/Safari'
#firefox: 'c:\Program Files\Mozilla Firefox\firefox.exe'
#ie: 'c:\Program Files\Internet Explorer\iexplore.exe'
Change the browser path to point to your browser.
Step 3. Create a Selenium test
script/generate selenium welcome_page_test
Edit test/selenium/welcome_page_test.sel. Replace the existing content with the following:
setup
open '/'
assert_title 'Ruby on Rails: Welcome aboard'
Step 4. Start the server in a test environment
run in a new terminal:
script/server -e test
Step 5. Run the Selenium test
rake test:acceptance
You should see the following output:
1 tests passed, 0 tests failed
Congratulations!
More information:
Selenium On Rails website
Full-stack Web App Testing with Selenium and Rails (RailsConf 2007)
1 comment:
Andrzej,
I agree Selenium on Rails make testing webapps dead easy. I spent a few hours to create automated tests for the features on my site, and now I run it before every release. There's also Selenium IDE for firefox which is a GUI for cranking out simple Selenium tests. Most test cases can be done without any code.
Post a Comment