【问题标题】:Can I invoke rails runner from arbitrary directory?我可以从任意目录调用 rails runner 吗?
【发布时间】:2013-10-04 14:29:50
【问题描述】:

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

whenever 调用每个任务:

runner "<module>.<task>"

即使用 rails runner。

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

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

从 Rails 应用程序的顶层以外的任何地方运行 rails runner xxx 似乎都不起作用(只是打印使用横幅)。

【问题讨论】:

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


    【解决方案1】:

    你可以这样做:

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

    其中&lt;your-app-root&gt; 是您的应用程序的根路径,&lt;arguments&gt; 是您无论如何都会提供给运行程序的参数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-08
      • 2018-04-16
      • 2020-09-09
      • 1970-01-01
      • 2015-01-23
      相关资源
      最近更新 更多