2009-04-23 39 views
2

我有一个可怕的Rails测试启动时间。运行一个可能需要2秒才能运行的功能测试时,从执行到返回命令行的总时间可能高达10-15秒。Gems减缓Rails测试启动,我可以选择性地禁用这些吗?

有两种宝石我知道的方式肯定让。 Facebook和Flickr宝石(Facebooker,Flickraw)。

Facebooker将始终打印在任何测试运行的以下信息:

/vendor/gems/facebooker-0.9.5/lib/facebooker.rb:23: warning: already initialized constant VERSION 

而且Flickraw似乎进行网络连接每一次检索的是什么,我相信列表是API调用它可以使。

我可以选择性地在测试时把这些宝石了吗?我真的想让我的测试运行尽可能接近实际测试需要运行的时间。另外,我已经尝试了rails_test_server gem,并且遇到了一些困难,因为这是一个非常大的项目,并且该项目中的某些冲突已经解决了我尚未解决的某些冲突。但我相信这个Facebook和Flickr宝石问题应该有一个解决方案。

回答

1

你如何使用这些宝石?你在config/environment.rb有什么需求?如果是这样,您可以将这些要求添加到开发和生产环境文件中,但不要添加到测试环境文件中。

+0

是的,在我的environment.rb。我会继续前进,将它们移到我的env特定配置中,看看我能否获得更好的结果。 – mwilliams 2009-04-23 15:38:40

0

如果你能够在不加载所有的宝石运行应用程序,这可能是一个很好的迹象,无论是你没有真正使用宝石摆在首位,或者你的测试是不够的。

但是,是的,这样做的正确方法是将宝石装载进入开发和生产环境特定的文件。

相关问题