RSpec and Webrat for Rails Integration Testing

Getting RSpec and Webrat to cooperate has gotten a bit easier recently, so make sure you have all the latest versions of the webrat, rspec and rspec-rails gems installed. Some quirks remain which might trip you up coming from TestUnit. For example if you

and

or

you might get

while a similar procedure would run fine in test/integration with TestUnit

But with RSpec, when you run

or

all is well. It seems you have to stand at least in the spec directory or above, otherwise the block

in spec_helper.rb will not run correctly.

So remember that RSpec is a bit less forgiving than TestUnit in how your tests are called.

It’s also important that you run

after installing RSpec to have the rake tasks “installed”.

Finally, his procedure will likely not be necessary with recent versions of Webrat and RSpec.

See here for a testing system for Rails that integrates RSpec and Webrat, it makes a lot of sense.

Posted: 08 June 2010

comments powered by Disqus