
Security News
Oxlint Introduces Type-Aware Linting Preview
Oxlint’s new preview brings type-aware linting powered by typescript-go, combining advanced TypeScript rules with native-speed performance.
= DTR -- Distributed Test Runner
Supporting DTR version: 0.0.x
This package contains DTR, a distributed test runner program for decreasing build time.
DTR has the following features:
Run tests in mutli processes/machines.
Hot plug distributed runners.
Runtime injection, all tests run in same environment including TestRunner.
DTR works in three parts: DTR Server, Runner and Test Suite Injection.
DTR Server is a Rinda Server which allows DRb services and clients to automatically find each other without knowing where they live.
Runner is a DRb service host on distributed machines to run tests.
Test Suite Injection works by loading 'dtr/inject_with_svn.rb' with all test files.
DTR only supports Subversion to update codebase now, you may need to consider using sychronize tools (likes rsync(http://samba.anu.edu.au/rsync/)) to synchronize project files between machines.
== Download
The latest version of DTR can be found at
== Installation
=== Normal Installation
You can install DTR with the following command.
% ruby install.rb
from its distribution directory.
=== GEM Installation
Download and install DTR with the following.
gem install --remote dtr
=== Running the DTR Test Suite
If you wish to run the unit and functional tests that come with DTR:
CD into the top project directory of dtr.
Type one of the following:
rake # You need a version of rake installed
== Online Resources
== DTR References
== Simple Example
Once installed, you can run DTR server anywhere:
% dtr -s
After server started, you can run DTR runner at your project directory as follows:
% dtr --server_address dtr_server_ip -r runner_name
Type "dtr --help" for an up-to-date option summary. Invoking dtr without any options causes dtr to run with option '--server_address localhost'
Most of time your project test suite need setup environment before run tests, you can set setup command by option '--setup', for example:
% dtr --server_address dtr_server_ip --r runner1 --setup "rake db:test:prepare"
At last, you need to add 'dtr/inject_with_svn.rb' into test_files of your test task in your Rakefile, and for load it, you also need add dtr lib path:
require 'dtr'
Rake::TestTask.new(:dtr_tests) do |t| t.libs << DTR.lib_path t.test_files = FileList['dtr/inject_with_svn.rb', 'test/*test.rb'] t.warning = false t.verbose = false end
== Run tests in multi-processes on one machine
In your Rakefile:
require 'dtr/raketasks'
DTR::MPTask.new :test do |t| t.test_files = FileList['test/*test.rb'] t.processes = 2 #default is 2 end
== Credits
[Josh Price] For fixing tests packer in release 0.0.1.
[Wang Pengchao] For share of lots of ideas.
== License
DTR is available under an Apache License Version 2.
== Support
The DTR homepage is http://dtr.rubyforge.org. You can find the DTR RubyForge page at http://rubyforge.org/projects/dtr.
Feel free to submit commits or feature requests. If you send a patch, remember to update the corresponding unit tests. If fact, I prefer new feature to be submitted in the form of new unit tests.
For other information, feel free to ask on the ruby-talk mailing list or contact mailto:swing1979@gmail.com.
== Usage
DTR client is invoked from the command line using:
% dtr [options ...]
Options are: -s, --server Start DTR service server. There must be a DTR server running. -r runner1_name,runner2_name Start DTR test runner agent. The name should be uniq of all runners. Every runner will be start in different process. The daemons gem must be installed, when start multiple runners -i, --setup COMMAND Set the command for initializing test environment for test runner, the default is no setup command -a, --server_address ADDRESS Set server address. The default is 'localhost'. It should be domain name or ip address, for example: 192.168.0.1 -D, --daemon Start server/runners in daemon mode. The daemon gem must be installed -S, --stop_server Stop server run in daemon mode. -R, --stop_runners Stop runners run in daemon mode. -d, --debug Output debug log -v, --version Show version -h, --help Show this help doc
= Other stuff
Author:: Li Xiao swing1979@gmail.com Requires:: Ruby 1.8.6 or later License:: Copyright 2007 by Li Xiao. Released under an Apache License 2. See the LICENSE file included in the distribution.
== Warranty
This software is provided "as is" and without any express or implied warranties, including, without limitation, the implied warranties of merchantibility and fitness for a particular purpose.
FAQs
Unknown package
We found that DTR demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Oxlint’s new preview brings type-aware linting powered by typescript-go, combining advanced TypeScript rules with native-speed performance.

Security News
A new site reviews software projects to reveal if they’re truly FOSS, making complex licensing and distribution models easy to understand.

Security News
Astral unveils pyx, a Python-native package registry in beta, designed to speed installs, enhance security, and integrate deeply with uv.