Testing REST web services has never been easy. It requires a running web server, multiple threads, network conection and complex transaction management.<p>Ideally, REST web service client test should have the following characteristics:<p><pre><code> The experience of testing web service API is similar to that of testing a ActiveRecord model
Start up and shut down the web server for the purpose of running REST web services
Rollback test data after each test
Control fixture creation for REST web services
</code></pre>
In this article, I demonstrate solutions to each of those mentioned with ActiveResource and Distributed Ruby.