Selenium 2.0: Out Now
seleniumhq.wordpress.com
seleniumhq.wordpress.com
For those who don't know what Selenium is (or forgot, like me), it is a system for testing web applications. It includes the following components:
+ Selenium IDE (Firefox add-on for creating and replaying tests) + Selenium Remote Control (run tests in multiple browsers and platforms) + Selenium Grid (run tests in parallel across multiple servers)
I'm not affiliated with the project, I just wanted to provide a quick intro for those in a hurry to learn a bit about it.
But we couldn't afford QTP licenses for everyone who wanted or needed to use it, so some people started writing tests in Selenium instead. Two years on, we're getting rid of QTP and switching entirely to Selenium. We're not doing it just cost reasons though, people just like using Selenium much more than QTP.
Hats off to the Selenium team for such a excellent tool!
Does anyone with experience with Selenium 2.0 know how much of a boost WebDriver gives for performance? Especially doing tests of a SPA with a lot of AJAX could get hairy and slow.
http://rubygems.org/gems/selenium-webdriver
Now wrap your tests in RSpec and you're good to go.
https://github.com/jnicklas/capybara
drivers:
Last summer, I took over a troubled Ruby on Rails project; the code was a mess, overly complex and bug-ridden, lack of meaningful unit tests, and an unhappy client.
I needed integration tests. After trying and failing with Cucumber, I switched to Selenium IDE.
A year later, I'm very happy with Selenium. The project is turning around and I sense the client is warming up to me.
I now use Selenium on almost all my projects.
The site was, and still is, stuck at Rails 2.1.1. And, at the time, I was not using RVM or Bundler. Meanwhile, I was putting out fires on a daily base on a live system.
With Cucumber, I was unable to run even a simple feature against the codebase. I'd get an exception, fix it somehow, then get another. After 20 minutes of that, I started looking for other options.
And on top of that, I did not know the codebase: brand new project.
The quickest path to stable ground was Selenium IDE. Just hit the record button and start writing integration tests. I quickly gained enough confidence to change the underlying code. And I was working within a budget of only a couple thousand dollars a month.
What I've grown to love about Selenium, as opposed to Cucumber, is its complete separation from the site it's testing. An integration testing framework can take a long time to master; I'd rather 1) minimize that time, 2) learn a tool that can be applied to as wide a variety of projects as possible.
I also like its ability to read CSV files out of the box ("table driven testing").