我有一个基于别人工作的Rails3应用程序。出于某种原因,他们决定不提供测试与应用程序,我觉得很沮丧。仅从现有模型/控制器生成测试
我希望能够做的就是对所有现有的控制器和模型进行测试,以便我可以在test :: unit中自己创建测试。我不想重新创建模型或控制器,只需创建测试。
我是Rails的新手,为可能做到这一点的耙指令寻找机会,但迄今为止都没有运气。任何建议/方向最受赞赏。
我有一个基于别人工作的Rails3应用程序。出于某种原因,他们决定不提供测试与应用程序,我觉得很沮丧。仅从现有模型/控制器生成测试
我希望能够做的就是对所有现有的控制器和模型进行测试,以便我可以在test :: unit中自己创建测试。我不想重新创建模型或控制器,只需创建测试。
我是Rails的新手,为可能做到这一点的耙指令寻找机会,但迄今为止都没有运气。任何建议/方向最受赞赏。
我知道这是一个有点老,但你可以这样做:
rails g scaffold Post -s
的-s
使得它跳过已经创建的文件。另外,如果你不使用标志,它会问你是否要覆盖文件,所以,不用担心。
没有办法做到这一点,我知道。要创建一个临时栏目项目并为所有模型生成脚手架,然后将生成的测试目录复制到实际项目中将非常简单。
I.e.
rails new temporary
cd temporary
rails g scaffold Post title:string body:text
rails g scaffold Comment post:references author:string body:text
cp -r test ../real_rails_app/
等
这个答案现在已经过时了。最新的Rails版本允许您仅使用跳过选项生成丢失的文件。
同意,是在相同的情况下,尝试所有建议,我可以谷歌,只有这一个真的帮助 – 2014-09-30 12:58:50
只生成相关的测试文件在现有的Rails应用程序3,我用“生成资源”,但跳过,我不想要的一切:使用
rails g resource Post --skip --no-resource-route --no-migration --no-helper --no-assets
其他选项可以发现rails generate resource --help
-s, [--skip] # Skip files that already exist
--resource-route # Indicates when to generate resource route
[--helper] # Indicates when to generate helper
[--assets] # Indicates when to generate assets
[--migration] # Indicates when to generate migration
为什么不使用generate scaffold
?因为它可能会生成我没有使用的视图。
你也可能想使用--skip-migrations。 – chug2k 2012-07-23 21:56:24