Serverspec sitesinin Gelişmiş İpuçları bölümü, aynı sınama kümesine sahip birden çok ana bilgisayarı sınamaya yönelik bir örnek gösterir. Kendi kendime bir örnek oluşturdum (https://gist.github.com/neilhwatson/81249ad393800a76a8ad), ama problemler var. İlk problem, testlerin, partiden devam etmek ve bir taksiyi tutmaktan ziyade ilk başarısızlıkta durmasıdır. İkincisi, hata çıkışının, hatanın gerçekleştiği ana bilgisayarda gösterilmemesidir. Bu sorunları düzeltmek ve tüm ana bilgisayarlar için nihai bir rapor hazırlamak için ne yapabilirim?Serverpec kullanılarak aynı sınama ile birden çok ana bilgisayarı sınama
cevap
İlk sayı için ServerSpec
varsayılan olarak tüm testlerinizi çalıştıracaktır. Ancak, her ortam için bir Rake
görevini yürüten bir döngüye sahip olduğunuzdan, bir hataya sahip olan ilk ortam görevin başarısız olmasına neden olur ve bu nedenle bir istisna kaldırılır ve görevlerin geri kalanı çalışmaz.
Özür dilerim ve Rake task to surround it with a begin/rescue güncelleyin. İkinci sorun için
...
begin
desc "Run serverspec to #{host}"
RSpec::Core::RakeTask.new(host) do |t|
ENV['TARGET_HOST'] = host
t.pattern = "spec/base,cfengine3/*_spec.rb"
end
rescue
end
...
, bu ServerSpec gibi görünmüyor olacak hangi güncellenen Gist konak biz add an RSpec configuration için kullanabilirsiniz spec_helper.rb
ayarlanan alır gösterir beri testler çalışan. Ama olan çevre çıkışı o after(:each)
'u kurar ve yalnızca host
hatalarını verir. İlgili kod değişiklikleri bir fork of the gist içindedir fakat temelde sizin spec_helper.rb
aşağıda pasajı olmanız gerekecek:
RSpec.configure do |c|
c.after(:each) do |example|
if example.exception
puts "Failed on #{host_run_on}"
end
end
end
- 1. Birden çok iş parçacığıyla sınama yapabilen .NET birim sınama çerçevesi
- 2. py.test - farklı dizinlerdeki sınamalar aynı çağrıda bulunulduğunda sınama hatasını sınama
- 3. Minitest ile denetleyicileri sınama
- 4. XCTest ile RACSignals'ı sınama
- 5. Testng sınama paketi sınama sınıfı yürütme sırasını sınama
- 6. Birden çok çelişkili css dosyası kullanırken öncelik sırasını sınama
- 7. SenTestCase ile yeni sınama ekleme (yeni sınama şemasında görünmüyor)
- 8. Birim sınama - SqlDataReader'ın izlenmesi
- 9. Ana değişkeni olan açısal birim sınama denetleyicisi
- 10. Birden çok sınama durumu içeren Scalatest veya specs2
- 11. Nesnenin birden çok özelliğe sahip olup olmadığını sınama
- 12. Yapı otomasyonu - sbt: Birden çok bağımlılığa karşı derleme/sınama
- 13. Windows Installers'ı sınama
- 14. Görünüm yardımcı yardımcılarını sınama
- 15. Swift birimi sınama ve "sınama için oluştur" hataları
- 16. Asenkron işlevi sınama birimi
- 17. Ember.js, PhantomJS sözdizimi hatası nedeniyle sınama hatasını sınama
- 18. birim sınama dosyaları oluştur
- 19. Sınama serileştirme kodlaması
- 20. Bir çekirdek modülünü sınama
- 21. Aynı ana bilgisayarda birden çok Swaggerize örneğini nasıl çalıştırırım?
- 22. SMTP ana bilgisayarı belirtilmemiş
- 23. StarTeam işlemlerini sınama
- 24. Behat sınama doğrulama iletisi
- 25. JUnit Sınama durumu Hata
- 26. RSpec kullanarak uyarıları sınama
- 27. "Sınama" nasıl yazılır?
- 28. Bir giriş dosyasıyla birim sınama
- 29. Birim sınama öğesi ile kimlik Framework
- 30. Hangi C birimi sınama çerçevesi?
Closer, ama yine de neler olup bittiğini konak yetmezliği söyleyemem. Yeni özellik: https://gist.github.com/neilhwatson/1d41c696102c01bbb87a –
Yeni bir hata: 'example' örnekte mevcut değil (örneğin bir' it' bloğu) veya bir örnek kapsamında çalışan yapılardan (örneğin 'önce', 'let', vb). Sadece örnek bir grupta (ör. Bir "açıklama" veya "içerik" bloğu) kullanılabilir. –
10 Ahh, kötüyüm, RSpec 2'den değil, RSpec 3'ten değil. Bu şekilde RSpec 3'te yapılıyor: http://stackoverflow.com/a/26164289/238292. Yanıtı güncelleyeceğim. –