我想做的是rails console test
使用Zeus gem 运行,例如:zeus console test
提前非常感谢!
该解决方案是通过修改您的 zeus.json 文件以包含一个新的控制台命令来实现的,该命令将在我调用的测试环境中运行test_console
。
这是我的整个zeus.json文件,唯一相关的部分是开头的部分"test_console"
:
{
"command": "ruby -rubygems -r./custom_plan -eZeus.go",
"plan": {
"boot": {
"default_bundle": {
"development_environment": {
"prerake": {"rake": []},
"runner": ["r"],
"console": ["c"],
"server": ["s"],
"generate": ["g"],
"destroy": ["d"],
"dbconsole": []
},
"test_environment": {
"cucumber_environment": {"cucumber": []},
"test_helper": {"test": ["rspec", "testrb"]},
"test_console": ["tc"]
}
}
}
}
}
但是,要启用 test_console,您需要在custom_plan.rb文件中创建一个自定义计划,如下所示:
require 'zeus/rails'
class CustomPlan < Zeus::Rails
def default_bundle_with_test_env
::Rails.env = 'test'
ENV['RAILS_ENV'] = 'test'
default_bundle
end
def test_console
console
end
end
Zeus.plan = CustomPlan.new
请注意,需要 default_bundle_with_test_env ,就像上面在 zeus.json 文件中定义的 test_console 方法一样。
最后,运行:zeus test_console
或zeus tc