我正在尝试使用rspec和rails 6进行并行测试。根据他们的文档,只需要添加PARALLEL_WORKERS=15,其中15是工人的数量。但是,这只适用于testcase,不适用于rspecs。
有没有人找到一个解决方案,使它与rspec工作?
https://edgeguides.rubyonrails.org/testing.html并行测试
RSpec不支持Rails 6内置的并行测试。
https://oozou.com/blog/running -规格-在-平行- rails - 6 - 84
#rspec #rubyonrails #rails6
RSpec
本身不提供对并行测试执行的内置支持。并行RSpec
测试通常需要额外的gem具>才能实现。然而,从那时起,可用的特定工具和技术可能已经发展。
RSpec
测试的一般方法:
使用并行测试Gem
parallel_tests
宝石是Rails应用程序中并行化测试套件的流行选择。它可以与RSpec一起工作,并且可以跨多个worker分发RSpec测试。要使用它,请将gem添加到
Gemfile
:gem 'parallel_tests'
然后,执行
bundle install
命令安装gem。配置并行测试安装gem后,您需要生成并配置并行测试任务。运行以下命令生成必要的配置文件:
rails generate parallel_tests:install
这会创建像
config/database.yml
和config/initializers/parallel_tests.rb
这样的配置文件。请确保根据应用程序的设置检查和调整这些文件。运行并行RSpec测试你现在可以使用
parallel_tests
命令并行运行你的RSpec测试。例如,要跨15个worker运行RSpec测试,您可以使用:bundle exec parallel_rspec -n 15
这个命令将把你的RSpec测试套件分成15个分区,并同时运行它们。
请记住,并行测试可能会影响您的测试环境设置、测试数据库和依赖项,因此可能需要进行彻底的测试和配置调整,以确保可靠的并行测试执行。