并行运行 rake spec

有人尝试过并行运行 rake spec 任务吗?

1 个赞

我们在 CI 和本地开发过程中并行运行测试。要试用,您可以运行:

bin/rake parallel:create
bin/rake parallel:migrate
bin/turbo_rspec
8 个赞

谢谢,这太酷了!

为了在我的本地开发环境中运行,我首先需要修复:

错误:创建数据库权限被拒绝
任务:TOP => db:create
(通过运行任务并添加 --trace 来查看完整跟踪)
PG::InsufficientPrivilege: 错误:创建数据库权限被拒绝
无法创建 'discourse_test_32' 数据库。请检查您的配置。
rake 中止!
ActiveRecord::StatementInvalid: PG::InsufficientPrivilege: 错误:创建数据库权限被拒绝

原因:
PG::InsufficientPrivilege: 错误:创建数据库权限被拒绝
# 进入容器
d/shell_root

# 在容器内 - root@discourse:/#
sudo -u postgres psql

# psql - postgres=#
ALTER USER discourse CREATEDB;
exit

# 在容器内 - root@discourse:/#
exit

现在它甚至可以在容器内运行了:

d/rake parallel:create
d/rake parallel:migrate
d/exec bin/turbo_rspec

在 3 分 11.6 秒内完成(文件加载耗时 0 秒) :rocket:
16015 个示例,12 个失败,10 个待定,3 个错误发生在示例之外

3 个赞