Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在rails应用程序中测试ruby脚本_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 如何在rails应用程序中测试ruby脚本

Ruby on rails 如何在rails应用程序中测试ruby脚本,ruby-on-rails,ruby,Ruby On Rails,Ruby,我有一些我想测试的cron作业,我应该在哪里输出它们,如何使用rails命令运行它们,如果有一些依赖项,比如文件和其他东西,我如何加载它们的设备 更具体地说,假设我得到了一个rb文件,它从应用程序文件夹中读取一个文件,进行一些解析,然后将内容写入db 将测试放在何处以及如何将其与rails连接?我的方法是创建一个名为app/jobs的文件夹,然后相应地命名文件夹中的类。然后使用script/rails runner调用这些作业。runner界面加载rails,您可以访问所有模型 class So

我有一些我想测试的cron作业,我应该在哪里输出它们,如何使用rails命令运行它们,如果有一些依赖项,比如文件和其他东西,我如何加载它们的设备

更具体地说,假设我得到了一个rb文件,它从应用程序文件夹中读取一个文件,进行一些解析,然后将内容写入db


将测试放在何处以及如何将其与rails连接?

我的方法是创建一个名为app/jobs的文件夹,然后相应地命名文件夹中的类。然后使用script/rails runner调用这些作业。runner界面加载rails,您可以访问所有模型

class SomeOddJob
  def run
    #do something
  end
end
在cron作业中,您可以这样运行作业(在生产模式下):

0 5***/path/to/script/rails runner-e生产“SomeOddJob.run”


我想我遗漏了测试部分,这是你问题的重点。使用上面的设置,因为您的cron作业基本上只是Rails模型,所以您可以编写单元测试或规范、负载装置等,就像您使用普通的旧Rails模型一样。我没有提到,但我是ruby和RubyonRails的新手,如果可以,请添加更多信息