2016-07-12 3 views
0

У меня есть файл, содержащий класс нескольких тестов (с использованием minitest). У меня есть require 'minitest/autorun' в верхней части файла, и все тесты выполняются корректно, когда я вызываю файл напрямую (ruby my_tests.rb).Рейк не работает никаких тестов с minitest

До сих пор так хорошо. Однако сейчас я пытаюсь запустить свои тесты через rake.

require "rake/testtask" 
task :default => [:test] 

Rake::TestTask.new do |t| 
    t.libs << Dir.pwd + "/lib/examples" 
    t.test_files = FileList['test/test*.rb'] 
end 

Вызывающие rake показывает test/my_test.rb вызывался, но никаких тестов в классе не получить запустить (0 тестов, 0 утверждения и т.д.). Я получаю эти предупреждения:

...gems/minitest-5.8.0/lib/minitest/assertions.rb:17: warning: already initialized constant MiniTest::Assertions::UNDEFINED 
...ruby/2.1.0/lib/ruby/2.1.0/minitest/unit.rb:80: warning: previous definition of UNDEFINED was here 

Как успешно выполнить тесты в грабли? Я нет используя рельсы.

EDIT: Вот вершина моего тестового файла:

require 'minitest/spec' 
require 'minitest/autorun' 
require 'minitest/reporters' 

reporter_options = { color: true } 
Minitest::Reporters.use![Minitest::Reporters::DefaultReporter.new(reporter_options)] 

class Test_PowerSpecInputs < Minitest::Test 
    def setup 
    @mc = TestClass.new() 
    end 

    def test_does_lib_have_constant 
    # my test code 
    end 
end 
+1

Какую версию minitest вы установили? – jphager2

+0

minitest 5.8.0, рубин 2.1.0p0, грабли 10.1.0. Я думаю, что я должен обновить рейк до последней версии и сделать снимок. –

+0

Обновление версии рейка сделало трюк. Спасибо! –

ответ

1

Попробуйте изменить Rakefile к этому.

require "bundler/gem_tasks" 
require "rake/testtask" 

Rake::TestTask.new(:test) do |t| 
    t.libs << "test" 
    t.libs << "lib" 
    t.test_files = FileList['test/**/*_test.rb'] 
end 

task :default => :test 
+0

Мне пришлось добавить файл gemspec, поскольку был вызван bundler, но я все равно получаю ту же ошибку. Я добавлю еще один комментарий выше с более подробной информацией о моем содержимом тестового файла. –

0

jphager2 заставил меня задуматься о версиях инструмента, и оказалось, что моя версия рейка была довольно старой. Обновление до 11.x сделало трюк.

Смежные вопросы