2012-09-05 15 views
10

sınama için yeni ve normalde bir model veya denetleyicisi olabilir gibi olan sorunlar ayıklama.RSpec'te nasıl daha iyi hata ayıklayabilirim?

I (bu bir fark yaparsa, FactoryGirl kullanarak) fabrikadan bir kullanıcı oluşturduk ve ben kaydederken oluşturmak yöntem nedeniyle validasyonunun başarısız eminim. Ancak, test sırasında başlatılan bir modelin nasıl hata ayıklanacağını bilmek isterim.

denedim:

user.inspect 
puts user 
raise user.to_yaml 

(ikincisi eserler, ama benim testlerin kalanı yürütülmesini durur ve doğrulama hataları göstermez - bu yalnızca bir varlık olmayan varlığını kanıtlıyor modeli başlatmayı denedim.)

Modeli bir hata olarak yükseltmekten başka, sınama sırasında hata ayıklama çıktısı yok ve yapabildiğim tek şey, test DB'm için günlüğü kuyruğa sokmak ve Orada neler olduğunu gör, ama en iyi durumda. Neyin peşinde olduğumu başarmak için hangi yöntemleri önerirsiniz?

herhangi bir yöne için teşekkür ederiz

cevap

2

Ödeme plymouth: Bir test başarısız olduğunda kırarak ile çalışır https://github.com/banister/plymouth

sana güzel REPL & ayıklama arabirimini vermek. Bazı projelerde kullandım ve testlerdeki belirsiz konular için çok kullanışlı buldum.

pp kullanıcı

:
+1

sayesinde Raylar için pry eklemekle ilgili diğer bilgiler @agmcleod. Plymouth en az hatalarla ilgili daha fazla göstermek için iyi görünüyor, ama orada ayıklama modeli örnekleme için bir yol göremiyorum. – jbnunn

+1

Plymouth kavramını seviyorum! Denemeden önce, süren bir sürümü bilen var mı? DÜZENLEME: "Pry-rescue kullanın, bu plymouth'un manevi ardılısıdır:" –

0

her zaman testine binding.pry ekleyerek pry oturumu açık çatlayabilir. (Istenirse başka yerlerde) Eğer testinde tam noktada kullanılabilir neyse erişebilir Bu şekilde. official Pry wiki

İlgili konular