Using tlb.rb:
tlb.rb uses tlb under the hood. It runs a sub-process which talks to the actual tlb-server(or equivallent) to balance and post run-feedback.
Balancer process is actually an HTTP server which listen to a certain TCP port so tlb-ruby library can talk to it.
This is controlled by an environment variable named 'TLB_BALANCER_PORT', which can be set to any port number(integer between 1024 to 65535) that is guaranteed to remain un-bound while the build runs.
In addition to this extra environment variable, the usual TLB environment variable setup is required(so the balancer knows things like what partitioning algorithm to use or the type of server it has to talk to etc).
Detailed documentation of TLB environment variable configuration is available at http://test-load-balancer.github.com
tlb.rb supports RSpec(1.x and 2.x), Cucumber and Test::Unit, which are the most widely used testing frameworks in the Ruby world.
tlb.rb is fully compatible with both Ruby 1.9 and 1.8 across MRI and JRuby. However, 1.9 support will be available only version 0.3.2 onwards.
We test tlb.rb on MRI and JRuby, however it should work with other flavours of Ruby(like REE) as well.
Getting tlb.rb:
RSpec2 support(both 1.9 and 1.8):
$ gem install tlb-rspec2
Cucumber support(both 1.9 and 1.8):
$ gem install tlb-cucumber
RSpec1 support(both 1.9 and 1.8):
$ gem install tlb-rspec1
Test::Unit support on Ruby 1.9:(available 0.3.2 onwards)
$ gem install tlb-testunit19
Test::Unit support on Ruby 1.8:(available 0.3.2 onwards)
$ gem install tlb-testunit18
If a version older than 0.3.2, please use
$ gem install tlb-testunit
for Test::Unit support.
Setting it up for your project
Please refer documentation on http://test-load-balancer.github.com/ for detailed setup instructions.
Documentation also explains TLB concepts and customization options in fair amount of detail. We highly recomend going through the TLB documentation.
Want a feature? Found a bug?
Post it at Issue Tracker.