minitest version 5.6.0 has been released!
* home: <https://github.com/seattlerb/minitest>
* bugs: <https://github.com/seattlerb/minitest/issues>
* rdoc: <http://docs.seattlerb.org/minitest>
* vim: <https://github.com/sunaku/vim-ruby-minitest>
* emacs: <https://github.com/arthurnn/minitest-emacs>
minitest provides a complete suite of testing facilities supporting
TDD, BDD, mocking, and benchmarking.
"I had a class with Jim Weirich on testing last week and we were
allowed to choose our testing frameworks. Kirk Haines and I were
paired up and we cracked open the code for a few test
I MUST say that minitest is *very* readable / understandable
compared to the 'other two' options we looked at. Nicely done and
thank you for helping us keep our mental sanity."
-- Wayne E. Seguin
minitest/unit is a small and incredibly fast unit testing framework.
It provides a rich set of assertions to make your tests clean and
minitest/spec is a functionally complete spec engine. It hooks onto
minitest/unit and seamlessly bridges test assertions over to spec
minitest/benchmark is an awesome way to assert the performance of your
algorithms in a repeatable manner. Now you can assert that your newb
co-worker doesn't replace your linear algorithm with an exponential
minitest/mock by Steven Baker, is a beautifully tiny mock (and stub)
minitest/pride shows pride in testing and adds coloring to your test
output. I guess it is an example of how to write IO pipes too.
minitest/unit is meant to have a clean implementation for language
implementors that need a minimal set of methods to bootstrap a working
test suite. For example, there is no magic involved for test-case
"Again, I can't praise enough the idea of a testing/specing
framework that I can actually read in full in one sitting!"
-- Piotr Szotkowski
Comparing to rspec:
rspec is a testing DSL. minitest is ruby.
-- Adam Hawkins, "Bow Before MiniTest"
minitest doesn't reinvent anything that ruby already provides, like:
classes, modules, inheritance, methods. This means you only have to
learn ruby to use minitest and all of your regular OO practices like
extract-method refactorings still apply.
### 5.6.0 / 2015-04-13
* 4 major enhancements:
* Added Minitest::Expectation value monad.
* Added Minitest::Expectations#_ that returns an Expectation. Aliased to value.
* All expectations are added to Minitest::Expectation.
* At some point, the methods on Object will be deprecated and then removed.
* 4 minor enhancements:
* Added a note about bundle exec pitfall in ruby 2.2+. (searls)
* Lazily start the parallel executor. (tenderlove)
* Make mocks more debugger-friendly (edward)
* Print out the current test run on interrupt. (riffraff)
* 3 bug fixes:
* Fix failing test under Windows. (kimhmadsen)
* Record mocked calls before they happen so mocks can raise exceptions easier (tho I'm not a fan). (corecode)
* Tried to clarify mocks vs stubs terminology better. (kkirsche)