github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

lifo / tickle

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 108
    • 3
  • Source
  • Commits
  • Network (3)
  • Issues (2)
  • Downloads (0)
  • Wiki (1)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (1)
    • master ✓
  • Tags (0)
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

Run your tests in parallel processes — Read more

  cancel

http://m.onkey.org

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

Fix the link to parallel_specs 
lifo (author)
Tue Nov 17 14:25:05 -0800 2009
commit  7015c144535d8f0e67c751dd3a7873c2f2df33ab
tree    0955924822d8480a564c884cbcb54b6c8d0e9ab9
parent  3f97743c899d299ce247d76d3eeff07ac3c593b9
tickle /
name age
history
message
file MIT-LICENSE Tue Jul 14 17:08:42 -0700 2009 Initial commit [lifo]
file README Tue Nov 17 14:25:05 -0800 2009 Fix the link to parallel_specs [lifo]
directory lib/ Tue Nov 17 14:21:57 -0800 2009 ruby 1.9 fix [chad]
directory tasks/ Mon Sep 21 05:09:59 -0700 2009 3 processes by default now [lifo]
README
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[2]

To only run unit tests :

  $ rake tickle:units

To run unit tests in 4 parallel processes :
  
  $ rake tickle:units[4]
  
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
Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server