使用RSpec的非Rails项目的首选目录结构是什么?

时间:2014-07-14 03:56:57

标签: ruby testing rspec rspec2

我是rspec的新手,我想使用rspec来测试我的非Rails项目。我在Web上可以找到的几乎所有关于使用rspec测试的Rails项目,所以我需要一些关于组织项目结构的帮助。如下所示,我有一个空目录my_first_project,我在此目录中执行了rspec --init。我的问题是,我应该在哪里放置我的项目代码?直接在my_first_projectmy_first_project\lib或其他地方?

MacBook-Pro:my_first_project yi$ rspec --init
  create   .rspec
  create   spec/spec_helper.rb
MacBook-Pro:my_first_project yi$ ls -latrh
total 8
drwxr-xr-x  4 yi staff   136B Jul 14 11:42 ..
drwxr-xr-x  3 yi staff   102B Jul 14 11:42 spec
-rw-r--r--  1 yi staff    41B Jul 14 11:42 .rspec
drwxr-xr-x  4 yi staff   136B Jul 14 11:42 .
MacBook-Pro:my_first_project yi$ 

3 个答案:

答案 0 :(得分:2)

构建您的项目like a gem,就像您可能会在那里结束一样。

您的代码位于lib目录中。

my_first_project/
├── bin/
│   └── runme.rb
├── lib/
│   ├── my_first_project/
│   │   ├── user.rb
│   │   ├── widget.rb
│   │   └── ...
│   └── my_first_project.rb
├── spec/
│    └── spec_helper.rb
├── .rspec
└── my_first_project.gemspec

答案 1 :(得分:0)

你可以把它放在任何一个地方。只需确保在spec_helper文件中正确使用它。

如果项目文件位于主目录中,请输入spec_helper:require_relative '../project_file.rb'

或者,如果它位于lib文件夹中,请输入:require_relative '../lib/project_file.rb'

希望有所帮助!祝你好运!

答案 2 :(得分:0)

通常初始化rspec会添加.rspec和spec / spec_helper。因此,在项目根目录中包含spec目录是标准的,并将spec文件与spec_helper文件一起添加到目录中(如果它们尚不存在)。将它们保存在目录中允许您拥有用于测试不同结构的文件。这些可以包括路由,模型,控制器等。