I’ve been running into issues, like intermittent crashes, with guard, which is a favorite amongst Rubyists, when it comes to automatically running unit tests on a file change. I’ve decided it would be a fun exercise to create my own tool, addressing my needs specifically:
- Listen for file changes and run matching tests.
- Customize configuration per project.
- Pause during git operations like checkout.
- Run all tests with Enter press.
- Fast, simple, stable and resource efficient.
- Can be used together with interactive debug mode.
I’ve achieved that goal with testerobly which I published as a Ruby gem, under the MIT license.

I’ve been using it for many months now, on quite a few projects and it has been delightful. It does exactly what it says it does and gets out of the way.
Go check it out.