Best solution for functional/acceptance tests for Rails


I've googled for this and haven't found much, so I thought I'd ask for people's experiences.

I'm happy now unit testing my models, views and controllers using RSpec. But rspec_on_rails doesn't have any functional ("integration") tests. They recommend using either Watir or Selenium. I've had a quick look at both.

What really impressed me was this: . It's interesting that he's got it working on a mac (I thought Watir was windows only until I found out about safariwatir). We have two macs at work (ironically, neither of them used by the designers) and I want to test cross-platform compatibility.

I've noticed this post: too, so it looks like I can have the functionality of either wrapped in RSpec.

Which leaves me with the dilemma, which one do I use? I'm too pressed for time to try them both extensively, so I was hoping someone here could give me a rundown of them (I've found but I assume it's already out of date.) From a quick look over, Selenium looks more powerful, and Watir looks more accessible, something you could train a QA team to use without needing a developer (our developers ARE the QA team, however).

I'd love to hear some more informed opinions so I can recommend that we use one or the other to my boss. He's already extremely impressed with the screencasts of both.


I vaguely remember discussion of these in Ruby Conf 2006, you may want to check out those presentations and videos for better understanding of these tools.

I personally would go with Selenium on Rails. Good luck!