5

我目前正在使用 Rspec 进行测试,以及 Guard 和 Spork 为方便起见。我注意到除非我退出并重新启动 Guard,否则随机种子在运行之间不会改变。虽然这不是一个主要问题,但如果这样做会很方便。

任何人都知道改变事物的方法,以便每次运行测试时都会使用新种子?

4

4 回答 4

3

我将--order rand:$RANDOM标志添加到我的 Guardfile 中:

guard 'rspec', zeus: true, cli: '--color --order rand:$RANDOM' do
  watch(...)
end
于 2013-08-29T20:11:30.673 回答
2

是的,以下对我有用。添加到 spec_helper.rb:

Spork.each_run do
  RSpec.configuration.seed = srand && srand % 0xFFFF
end

从这里

于 2014-04-11T19:30:49.370 回答
0

你用的是什么版本?

我正在使用警卫(1.6.2),rspec(2.13.0)。我没有使用 spork,但它为我随机化了种子。

这是我的 spec_helper 中的相关位:

RSpec.configure do |config|
  config.order = 'random'
end
于 2013-03-28T18:24:25.950 回答
0

如果您想在 spring 上下文中具有随机顺序,但也使用--seed参数添加:

config.seed = srand % 0xFFFF unless ARGV.any? { |arg| arg =~ /seed/ }

spec_helper.rb.

于 2016-08-03T09:41:23.383 回答