Ruby on rails 用于并行测试Rails应用程序的JRuby友好方法

Ruby on rails 用于并行测试Rails应用程序的JRuby友好方法,ruby-on-rails,testing,jruby,parallel-testing,Ruby On Rails,Testing,Jruby,Parallel Testing,我正在寻找一个系统,在一个使用JRuby的RubyonRails应用程序(使用rspec、cucumber)中并行化一大套测试。Cucumber实际上并不太糟糕,但是完整的rSpec套件目前需要将近20分钟才能运行 我能找到的系统(hydra,并行测试)看起来像是使用了forking,这不是JRuby环境的理想解决方案 对于这种应用,我们目前还没有一个好的答案。就在最近,我开发了一个fork,它允许您保持流程运行并重新运行其中的规范或功能,前提是您使用的是支持代码重新加载的应用程序框架(如Rai

我正在寻找一个系统,在一个使用JRuby的RubyonRails应用程序(使用rspec、cucumber)中并行化一大套测试。Cucumber实际上并不太糟糕,但是完整的rSpec套件目前需要将近20分钟才能运行


我能找到的系统(hydra,并行测试)看起来像是使用了forking,这不是JRuby环境的理想解决方案

对于这种应用,我们目前还没有一个好的答案。就在最近,我开发了一个fork,它允许您保持流程运行并重新运行其中的规范或功能,前提是您使用的是支持代码重新加载的应用程序框架(如Rails)。以应用程序为例,了解如何使用Spork

您可以为应用程序生成一个spork实例,然后向它发送多个线程请求以运行不同的规范。但是,您依赖RSpec内部实现线程安全,不幸的是,我很确定它们不是

也许您可以以我的代码为起点,构建一个spork实例集群,然后拥有一个客户机,可以在它们之间分发您的测试套件。这不会节省内存,启动也需要很长时间,但如果您一次启动它们,然后重复使用它们,您可能会在效率上有所提高

请随便来看看user@jruby.codehaus.org或者#免费节点上的jruby获取更多想法