Просто создайте новую задачу rake
, которая запускает другие:
Lib / задачи / my_extensions.rake
task :my_test do
Rake::Task[:foo].invoke
Rake::Task[:bar].invoke
end
# or the short version:
# task my_test: [:foo, :bar]
task :foo do
puts "FOO"
end
task :bar do
puts "BAR"
end
Запустите rails my_test
, и вы увидите FOO
и BAR
, напечатанные на вашей консоли.
Если вы не знаете , куда поместить файл для написания кода выше, проверьте /Rakefile
:
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
require_relative 'config/application'
Rails.application.load_tasks
Там написано, что они должны быть записаны внутри lib/tasks
и заканчиваться на .rake
, вам не нужно их запрашивать. В вашем конкретном вопросе измените мой код с :foo
и :bar
на ваши конкретные задачи :rubocop :spec :teaspoon
.
Однако похоже, что вы выполняете некоторый цикл BDD или TDD. Проверьте rails Guard , это может помочь вам лучше. Я использую его в своем проекте, и он отлично работает.