Rails uygulamasının rasgele bir sırada yürütülmesine yönelik testlere nasıl sahip olabilirim? Komisyon kullanarak basit bir çözüm var mı?Ruby - Testleri rastgele bir sırayla yürütme
cevap
Sen kontrol etmek isteyebilirsiniz "ZenTest 3.9.0: şimdi daha Evil" İşte (doğrudan bir bağlantı yapamaz, kullanma google'ın önbellek)
Added ability to set test execution order, defaults to :random. EVIL!
ZenTest ile biraz zaman geçirdim, ancak rastgele sırayı nasıl etkinleştireceğimi asla tahmin edemem. Yani, varsayılan yürütme sırası sabit ve farklı test yürütmeleri arasında aynı kalır. –
, lib/tasks/tasks.rb
namespace :test do
namespace :randomize do
desc "Randomize tests"
Rake::TestTask.new(:all => "db:test:prepare") do |t|
t.libs << "test"
t.test_files = Rake::FileList[
'test/unit/**/*_test.rb',
'test/functional/**/*_test.rb',
'test/integration/**/*_test.rb'
].shuffle
t.verbose = true
end
end
end
çalıştırın:
rake test:randomize:all
dosya testlerinde içinde hala göründükleri sırayla çalıştırılır unutmayın. Buna izin vermek için maymun yama testi ünitesini tahmin edebilirsin.
Teşekkürler Sam. Bu benim için işe yaramaz ve aslında gönderdiğiniz çözüm, geldiğim yöntemle aynıdır: sadece yürütmek için deneme dosyalarının listesini içeren diziyi karıştırmanız yeterlidir. Aslına bakılırsa, TestTask tırmığına aktardığınız test dosyalarının sırası yok sayılır, yani içten tırmık, bu listeyi dosya adında alfabetik olarak sıralar. Gerçek test yürütme sırasını izlemek için TESTOPTS = "- v" seçeneği ile komisyon görevini yürütmekte olan bu davranışı doğrularım. 114 RubyGems - 1.8.6: 1.3.5 Rake: 0.8.7 Rayları: 2.3.3 var mı fazla fikir Yakut: Burada kullandığım sürümler nelerdir? Tx! –
- 1. xUnit.net'de, testleri sırayla çalıştırmak mümkün mü?
- 2. Ruby - Thor belirli bir Görev yürütme
- 3. Test yürütme sürelerini yazdırma ve pyTest ile yavaş testleri sabitleme
- 4. jQuery: sırayla
- 5. Azalan sırayla azalan bir sıralama
- 6. Heroku'nun barındırdığı Postgres veritabanlarında Ruby on Rails testleri çalıştırılamıyor
- 7. Birim testleri için çerçeve testleri
- 8. İletki, testleri çalıştırmadan testleri geçer
- 9. Python unittest keşif testleri nasıl sıralanır?
- 10. AngularJS yönergeleri hangi sırayla derlenmiş
- 11. rastgele bir sayı
- 12. bir rastgele sayı üreteci
- 13. 'Sırayla' koşul nasıl eklenir?
- 14. Şekilsiz - yani farklı sırayla
- 15. Dosya arama sırayla
- 16. Alfabetik sırayla adi Soyad
- 17. Rastgele ve Rastgele eşzamanlılıktan IntStream
- 18. Baskı BÜYÜK PDF gruplarını sırayla sipariş edin
- 19. Running NPM komut sırayla
- 20. Drupal hook_cron yürütme sırası
- 21. İkili olmayan bir ağaç sırayla donabilir mi?
- 22. Bir ifadede sırayla birkaç NEXTVAL sorgulama
- 23. QModelIndex yeni bir sırayla nasıl ilişkilendirilir?
- 24. Bir ağaçtan sırayla dize yazdırmaya çalışırken sorun
- 25. İki komut, sırayla bir satırda R?
- 26. Jquery Tablo yürütme yürütme
- 27. Birim test yürütme sırasını belirtmek için bir Burun eklentisi
- 28. Yürütme
- 29. Multithread yürütme
- 30. Java varargs'ları, verildikleri sırayla alındı mı?
Bunu neden yapmak istersiniz? –
Testler arasında herhangi bir bağımlılık olmadığından emin olmak için? –
Evet, bizim için ana nokta testler arasında herhangi bir bağımlılık olmamasıdır. –