How to run a single test from a Rails test suite?

NOTE: This doesn’t run the test via rake. So any code you have in Rakefile will NOT get executed.

To run a single test, use the following command from your rails project’s main directory:

ruby -I test test/unit/my_model_test.rb -n test_name

This runs a single test named “name”, defined in the MyModelTest class in the specified file. The test_name is formed by taking the test name, prepending it with the word “test”, then separating the words with underscores. For example:

class MyModelTest < ActiveSupport::TestCase
  test 'valid with good attributes' do
    # do whatever you do
  end

  test 'invalid with bad attributes' do
    # do whatever you do
  end
end

You can run both tests via:

ruby -I test test/unit/my_model_test.rb

and just the second test via

ruby -I test test/unit/my_model_test.rb -n test_invalid_with_bad_attributes

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)