MiniTest integration for Rails 3.1.
gem install minitest-rails
This installs the following gems:
minitest
Create a new rails app without Test::Unit:
rails new MyApp --skip-test-unit
Add minitest-rails
to the :test
and :development
groups in Gemfile:
group :test, :development do gem 'minitest-rails' end
Or, for the truly enlightened, add minitest-rails
to the :test
and :development
groups in Isolate:
env :development, :test do gem 'minitest-rails' end
Next run the installation generator with the following:
rails generate mini_test:install
This will add the minitest_helper.rb
file to the test
directory.
We aim to expose MiniTest with minimal changes for testing within Rails. Your test classes will inherit from MiniTest::Rails::Spec (or Model, or Controller, etc) and you can use the MiniTest::Spec DSL. You can generate test files with the standard model, controller, scaffold, and other generators:
rails generate model User
And you can specify generating the tests using the MiniTest::Spec DSL on any of the generators by providing the --spec
option:
rails generate model User --spec
And you can specify generating the fixture for a model by providing the --fixture
option:
rails generate model User --fixture
You can also set these as defaults by adding the following to the config/application.rb
file:
config.generators do |g| g.test_framework :mini_test, :spec => true, :fixture => true end