我可以在一个文件中运行所有测试:
rake test TEST=path/to/test_file.rb
但是,如果我只想在该文件中运行一个测试,我该怎么做呢?
我正在寻找类似的功能:
rspec path/to/test_file.rb -l 25
我可以在一个文件中运行所有测试:
rake test TEST=path/to/test_file.rb
但是,如果我只想在该文件中运行一个测试,我该怎么做呢?
我正在寻找类似的功能:
rspec path/to/test_file.rb -l 25
当前回答
不需要宝石: ruby - test test/lib/testRb——name /some_test/
来源:http://blog.arvidandersson.se/2012/03/28/minimalicous-testing-in-ruby-1-9
其他回答
我使用ruby /path/to/test -n /distinguishable word/
编辑: -n是——name的缩写。可区分的单词可以是你放在测试描述中的任何字符串,我通常使用一些随机的单词,我知道这些单词不会出现在其他测试的描述中。
命令应该是:
% rake test TEST=test/test_foobar.rb TESTOPTS="--name=test_foobar1 -v"
安装gem minest -focus并使用关键字focus on test/spec,如下所示,只运行特定的测试。
focus
def test
end
focus
it "test" do
end
这将不需要传递任何命令行参数。
以下将会起作用
def test_abc
end
test "hello world"
end
这可以通过
bundle exec ruby -I test path/to/test -n test_abc
bundle exec ruby -I test path/to/test -n test_hello_word
如果你正在使用MiniTest和Rails 5+,最好的方法是在一个文件中运行所有测试:
bin/rails test path/to/test_file.rb
对于单个测试(例如在第25行):
bin/rails test path/to/test_file.rb:25
看到http://guides.rubyonrails.org/testing.html the-rails-test-runner