parallel_tests RSpec提高性能

时间:2015-11-12 00:17:15

标签: ruby-on-rails rspec parallel-testing

我有一套控制器测试,可以调用外部沙盒api进行测试,这会使性能变得相当慢。我希望parallel_tests不仅可以并行运行套件,还可以单独运行describe个。

例如:

RSpec.describe FooController do
    describe '#index' ...
    describe '#create' ...
end

由于#index#create测试不共享任何内存空间,因此可以将它们并行化。一种选择是:

RSpec.describe 'FooController#index' do
    describe '#index' ...
end

RSpec.describe 'FooController#index' do
    describe '#create' ...
end

但是这使得测试看起来很笨拙并且难以阅读。有没有办法可以让parallel_tests并行运行describe

1 个答案:

答案 0 :(得分:4)

原来,parallel_tests的维护者也有一个专为此设计的宝石:https://github.com/grosser/parallel_split_test

通过gem install 'parallel_test_split'安装后,您只需运行parallel_split_test

即可

将一个缓慢(但很小)的套件从12秒减少到6