Test::Unit guard allows to automatically & intelligently launch tests when files are modified or created.
If you have any questions about Guard or Guard::Test, please join us on our Google group or on
- Compatible with test-unit 2.
- Tested on Ruby 1.8.7, 1.9.2, REE, Rubinius and JRuby.
Please be sure to have Guard installed before continue.
If you're using Bundler, add it to your
group :tools do gem 'guard-test' end
Note for Rails users: you should add it inside a
:tools group (or at least not the
:test group) to avoid the loading of the gem on Rails boot.
$ bundle install
or manually install the gem:
$ gem install guard-test
Add Guard definition to your
Guardfile by running this command:
$ guard init test
Ruby on Rails
Ruby on Rails lazy loads gems as needed in its test suite. As a result Guard::Test may not be able to run all tests until the gem dependencies are resolved.
To solve the issue either add the missing dependencies or remove the tests.
Specify ruby-prof as application's dependency in Gemfile to run benchmarks.
Rails automatically generates a performance test stub in the
test/performance directory which can trigger this error.
ruby-prof to your
Gemfile (inside the
group :test do gem 'ruby-prof' end
Or remove the test if it isn't necessary.
Please read the Guard usage doc.
Guard::Test can be adapted to any kind of projects.
See the template Guardfile for some examples.
Please read the Guard documentation for more info about the Guardfile DSL.
Deprecation notice: The
:runner option is deprecated. If you had set it to "fastfail", it is now the default in test-unit 2, but if you want the opposite, you can pass the
:cli => '--no-show-detail-immediately' option instead.
Boolean) - Whether or not to use
bundle execto run tests. Default to
trueif a you have a Gemfile in the current directory.
Boolean) - Whether or not to require rubygems (if bundler isn't used) when running the tests. Default to
Array<String>) - Directly run your specs against multiple Rubies. Default to
Boolean) - Run your tests with
spork-testunit. Default to
String) - Pass arbitrary CLI arguments to the command that runs the tests. Default to
Boolean) - Run all tests on Guard startup. Default to
Boolean) - Run all tests after the current run tests pass. Default to
Boolean) - Re-run failing tests until they pass. Default to
Array<String>) - Array of paths that where are located the test files. Default to
When true, notifications are disabled. This might be fixed in future releases.
By default, guard-test will only look for test files within
test/ in your project root. You can add any paths using the
guard :test, :test_paths => ['test', 'vendor/plugins/recaptcha/test', 'any/path/test'] do # ... end
- Source hosted on GitHub: https://github.com/guard/guard-test
- Report issues and feature requests to GitHub Issues: https://github.com/guard/guard-test/issues
Pull requests are very welcome! Please try to follow these simple "rules", though:
- Please create a topic branch for every separate change you make;
- Make sure your patches are well tested;
- Update the README (if applicable);
- Update the CHANGELOG and add yourself to the list of contributors (see at the bottom of the CHANGELOG for examples);
- Please do not change the version number.
For questions please join us on our Google group or on