web-dev-qa-db-ja.com

単体テストと機能テストでのレイクからのシード値の使用

Railsアプリケーションで、rakeを使用して単体テストと機能テストを実行するとき、コマンドラインで指定されたシード値があることに気づきました:-seed x

$ rake test
(in /code/blah)
Loaded suite /../Ruby-1.9.2-p180/gems/rake-0.8.7/lib/rake/rake_test_loader
Started
.
Finished in 0.12345 seconds.

1 tests, 1 assertions, 0 failures, 0 errors, 0 skips

Test run options: --seed 20290

この値をテストで使用することは可能だと思いますが、方法がわかりません。私はGoogleを試しました、Rails Guides et al。ですが、答えを見つけることができないようです。

編集:

このシード値は、テストの実行順序をランダム化するためにMinitestで使用されるオプションですか?

58

私はこれをMiniTestについてオンラインで見つけました: http://www.mikeperham.com/2012/09/25/minitest-Ruby-1-9s-test-framework/

結局のところ、あなたは正しいです。テストの実行順序をランダム化することです。次のように明示的に使用できます。

rake TESTOPTS="--seed=1261"

(上記のリンクによると)。

81
MrDanA

MrDanA からの答えは正しいです。このソリューションも機能し、少し短く覚えやすいです。

SEED=20290 rake test
60
Carl Zulauf