2017-08-29 43 views

回答

0

我正在嘗試做同樣的事情。

我認爲rails test也運行系統測試,你需要重新定義rake任務。爲了什麼我可以調查任務在testing.rake文件railties寶石/lib目錄內的定義:

desc "Runs all tests in test folder except system ones" 
    task :test do 
    $: << "test" 
    if ENV.key?("TEST") 
    Minitest.rake_run([ENV["TEST"]]) 
    else 
    Minitest.rake_run(["test"], ["test/system/**/*"]) 
    end 
end 

在裏面else函數的第二個參數是運行測試時要排除的模式。

這裏Overriding rails' default rake tasks 它解釋瞭如何重寫它們,但是我不能讓它以這種方式工作。

如果它可以幫助你,我用bundle exec rake test:system test而不是和它運行系統和所有其他測試一起