Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Run your tests in parallel processes http://m.onkey.org
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
Tickle ====== Tickle spawns multiple processes and tries running your test suite in parallel for reducing the time taken to run them. Thanks to http://github.com/grosser/parallel_specs for the concept. Setup ===== To install : $ script/plugin install git://github.com/lifo/tickle.git Example ======= To run all tests : $ rake tickle # This will use 3 processes by default To run all tests using 2 processes : $ rake tickle To only run unit tests : $ rake tickle:units To run unit tests in 4 parallel processes : $ rake tickle:units tickle:functionals and tickle:integration should work as expected. Tuning ====== For best results, use tickle with Ruby Enterprise Edition and Twitter's GC settings : - http://www.rubyenterpriseedition.com/ - http://blog.evanweaver.com/articles/2009/04/09/ruby-gc-tuning/ Database Setup ============== If you're NOT USING transactional fixtures, you'll need to create 'N' new databases. Where 'N' is the maximum number of parallel processes you want to run. Assuming you want to run 2 proccesses, you'll need to provide test_1 and test_2 config settings in database.yml : test_1: adapter: mysql encoding: utf8 database: myapp_test1 pool: 5 username: root password: socket: /tmp/mysql.sock test_2: adapter: mysql encoding: utf8 database: myapp_test2 pool: 5 username: root password: socket: /tmp/mysql.sock Copyright (c) 2009 Pratik Naik, released under the MIT license