9

lib/tasks に次のタスクがあります。

    タスク :cuke_test_db_constraints do
      puts 'cuke_test_db_constraints'
      ENV['TEST_DB_CONSTRAINTS'] = '1'
      Rake::Task['cucumber'].reenable
      Rake::Task['cucumber'].invoke
    終わり

    タスク :デフォルト => :cuke_test_db_constraints

ご覧のとおり、環境変数を設定した後、キュウリを再度実行したいと思います。ただし、 cuke_test_db_constraints タスクが実行されている間、cucumber はシナリオを実行しません。cucumber タスク自体は実行されるので、lib/tasks/cucumber.rake の :cucumber タスクの下にデバッグ出力を追加して確認しました。

何か案は?ありがとう。

4

1 に答える 1

1

タスクを命令的に呼び出すのではなく、cucumberタスクが依存していることを宣言する必要があります。cuke_test_db_constraints

task :cuke_test_db_constraints do
  puts 'cuke_test_db_constraints'
  ENV['TEST_DB_CONSTRAINTS'] = '1'
end

task :default => :cucumber
task :cucumber => :cuke_test_db_constraints
于 2013-03-06T14:27:18.513 に答える