结合铁路和非铁路测试的策略?

时间:2012-02-09 19:28:52

标签: ruby-on-rails ruby ruby-on-rails-3 unit-testing testunit

我们很高兴使用Test :: Unit作为我们的Rails应用程序和内置任务

rake test
rake test:units
rake test:functionals
rake test:integration

随着我们的成长,我们得到了一堆与Rails无关的ruby代码。主要是进入lib。我想让人们很容易为lib中的目录添加新的测试,这些测试可能会或者可能不会加载Rails环境,并且所有的ruby测试都在rake:test上运行。但是我不太清楚延伸rake test的首选方式是什么。我们是否应该为每个新目录需要一个.rake文件? - 这看起来很烦人。

2 个答案:

答案 0 :(得分:0)

Corey Haines会给talks on fast rails tests提供帮助。

这是an example app that demonstrates how you could layout tests that don't require rails(确保将分支切换到no_rails以查看最终布局)。

即。在lib中创建扩展程序,从spec_no_rails测试扩展程序,从模型中调用这些扩展程序,然后使用time rspec -fd -I lib/your_extension/ spec_no_rails/

运行测试

答案 1 :(得分:-1)

你可能是单元测试lib代码,所以它应该放在test / unit / lib中。如果你想单独测试lib代码,你可以把它拉到宝石中。