我可以从任意目录调用rails runner吗?

时间:2013-10-04 14:29:50

标签: ruby-on-rails rspec integration-testing whenever

我正在为Rails应用程序编写一些集成测试。该应用程序具有一组后台任务,通常通过cron / whenever进行安排。由于cron作业每隔几个小时才会运行一次,我想直接从集成测试中运行它们,而不是等待cron个作业。

每个任务都由whenever使用:

调用

runner "<module>.<task>"

即。使用rails runner。

我的集成测试存在于应用程序的API包装器中,该应用程序与Rails应用程序位于不同的目录中。

问题是,我可以在与当前目录不同的目录上调用rails runner,还是从Rails项目之外的rspec示例中调用Rails环境中的代码?

仅运行rails runner xxx似乎无法正常工作(只打印使用情况标题),而不是Rails应用程序顶层以外的任何位置。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

<your-app-root>/script/rails runner <arguments>

其中<your-app-root>是您的应用程序的根路径,而<arguments>是您将为跑步者提供的参数。