Skip to content

jason-o-matic/tarantula

 
 

Repository files navigation

== tarantula ==

== Description ==

Tarantula is a big fuzzy spider. It crawls your Rails application, fuzzing data to see what breaks.

== Install ==

{{{
#!sh
script/plugin install git://github.com/relevance/tarantula.git tarantula
}}}

== Dependencies ==

{{{
gem install htmlentities
gem install facets
}}}

== Usage ==

Create a Rails integration test that looks like this, filling in your own auth params. You will probably want to include all fixtures.

{{{
# somewhere
require 'relevance/tarantula'

# in your test
def test_with_login
  post '/sessions/create', :password => 'your-pass'
  assert_response :redirect
  assert_redirected_to '/'
  follow_redirect!
  tarantula_crawl(self)
end
}}}

If you want to set custom options, you can get access to the crawler and set properties before running it. For example, this would turn on HTMLTidy.

{{{
def test_with_login
  post '/sessions/create', :password => 'your-pass'
  assert_response :redirect
  assert_redirected_to '/'
  follow_redirect!
  t = tarantula_crawler(self)
  t.handlers << Relevance::Tarantula::TidyHandler.new
  t.crawl '/'
end
}}}

Assuming your project is at /work/project/:

{{{
#!sh
cd /work/project
rake tarantula:test
}}}

== Verbose Mode ==

If you run the test you will get a report in tmp/tarantula. You can also set VERBOSE=true to see more detail as the test runs.

For more options see the test suite.

== Allowed Errors ==

If, for example, a 404 is an appropriate response for some URLs, you can
tell Tarantula to allow 404s for URLs matching a regexp:

{{{
t = tarantula_crawler(self)
t.allow_404_for %r{/users/\d+/}
}}}


== Bugs/Requests ==

Please submit your bug reports, patches or feature requests as a ticket under the component "tarantula" on our Trac instance here: http://opensource.thinkrelevance.com/.  You'll have to create an account (Sorry!  Otherwise we'd get way too much spam).

== License and Copyright ==

Copyright (c) 2008 Relevance, Inc., released under the MIT license

About

a big hairy fuzzy spider that crawls your site, wreaking havoc

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 99.5%
  • JavaScript 0.5%