在
Java中通常您将创建两个源文件夹src并使用相同的软件包层次结构进行测试.
在Ruby中,你只是把所有的测试放在与测试类相同的文件夹中?还是在单独的文件夹中创建一个类似的层次结构?如果是这样,您如何在单元测试中管理需求路径?
解决方法
首先,每个宝石都有一个典型的布局.代码几乎完全是lib.在根目录中,只有像READMEs,gemspec文件和一些可选的配置数据这样的元数据.如果您使用像Rails或Sinatra这样的Web应用程序编写,则会使用其布局标准
在所有这些项目类型中,测试可以在相似的位置找到.根据您使用的测试框架,有不同的标准.
如果使用Test::Unit,测试将在测试目录中.关于如何实际组织该目录中的测试文件没有真正的标准.我个人发现至少部分地镜像测试代码的文件布局是有用的.如果您慷慨地使用模块/命名空间,那应该使它更可读.
如果使用RSpec,则测试(然后称为规格)进入spec目录.上述关于实际测试布局的注意事项也适用于此.
最后,大多数开发者决定如何设置测试.由于测试是任何人有不同(和弦)意见的领域,所以没有成功的道路.你应该看看你使用的一些宝石,以及他们做什么的东西.测试::单位布局的一个例子可以在Rails宝石中找到,例如为ActiveRecord. RSpec测试的一个例子是ChiliProject的chiliproject_backlogs插件.