使用 Zeus Parallel Spec 和 Rspec 时无法运行单个测试。焦点:真不行



rspec提供了方便的能力通过测试将focus: true放置,以使其孤立地运行。并跑步 $bundle exec rspec spec使此功能为TRUE

但是,单独使用平行规格 $rake parallel:spec

或宙斯: $zeus rake parallel:spec

根本不起作用,并导致以下

ignoring {:focus => true}

为什么?我不希望它被忽略!

使用并行规格时,是否可以运行单个测试甚至单个文件?试图设置它并调试与并行处理有关的错误错误,但是我不想运行整个测试套件来测试修复程序。

之后指定文件位置,例如 $zeus rake parallel:spec spec/features/testing_questionnaire_submission_spec.rb

也无法正常工作。

这是一个很好的问题,我的配置中有同样的问题。由于Parallel_Tests将文件分解为单独的线程,因此运行单个文件多线程将不会有任何好处。

运行时您可以看到这个:

parallel_rspec spec/models/some_test.rb

它会说 1 processes for 1 specs, ~ 1 specs per process

因此,如果要在some_test.rb中运行单个规格,请使用:focus进行itspecify块,然后运行,

rspec spec/models/some_test.rb
or
parallel_rspec spec/models/some_test.rb

没关系。如果要运行一个单个规格文件,则是同一命令,没有:focus

需要解决的问题是在运行parallel_rspec并且在测试中某个地方有一个:focus时,它应该只运行一个规格。相反,它似乎在每个线程中运行每个规格,除了包括:focus的线程,它仅在该线程中运行一个测试。

您可以在这里看到,我认为此问题不会解决:https://github.com/grosser/parallel_tests/issues/114

最新更新