爲了方便起見,我正在使用Rspec進行測試,以及Guard和Spork。我注意到,除非我退出並重新啓動Guard,隨機種子在運行之間不會改變。雖然這不是一個主要問題,但如果確實如此,它會很方便。我可以使用Guard/Spork更改每個在Rspec中運行的隨機化種子嗎?
任何人都知道一種方式來改變事情,以便它在每次運行測試時都使用新的種子?
爲了方便起見,我正在使用Rspec進行測試,以及Guard和Spork。我注意到,除非我退出並重新啓動Guard,隨機種子在運行之間不會改變。雖然這不是一個主要問題,但如果確實如此,它會很方便。我可以使用Guard/Spork更改每個在Rspec中運行的隨機化種子嗎?
任何人都知道一種方式來改變事情,以便它在每次運行測試時都使用新的種子?
你使用的是什麼版本?
我使用guard(1.6.2),rspec(2.13.0)。我沒有使用spork,但它爲我隨機化種子。
下面是我在我的spec_helper的相關位:
RSpec.configure do |config|
config.order = 'random'
end
問題不在於它不會隨機排列順序(配置正常),而是因爲它只會在重新啓動spork時生成新的種子。 –
我加入了--order rand:$RANDOM
標誌我Guardfile:
guard 'rspec', zeus: true, cli: '--color --order rand:$RANDOM' do
watch(...)
end
完美運作。謝謝! –
如果你想在Spring上下文中隨機秩序,而且使用--seed
參數補充一點:
config.seed = srand % 0xFFFF unless ARGV.any? { |arg| arg =~ /seed/ }
到spec_helper.rb
。
同樣的問題。每次運行以'seed 0隨機化'結束,即使使用spec_helper.rb中的標準隨機順序配置。你有沒有得到答案? – jordanpg
我使用Spring而不是Spork(基本上是一樣的東西),而RubeOnRails的答案對我來說非常合適。 –