Bir girdi alanının, alanımın boş olduğu fabrikalarımdan biriyle eşleşip eşleşmediğini görmek için denemeye çalışıyorum.Boş bir giriş alanını nasıl test edersiniz?
address => {:first_name => '', :last_name => ''}
giriş alanına ne ben bu kullanıyorum kontrol: İlk adı boşsa
assert_select '#first_name[value=?]', address.first_name
Bunun dışında çalışmaz. Bu hatayı alıyorum ve test başarısız oluyor.
Expected at least 1 element matching "#first_name[value='']", found 0.
<false> is not true.
Oluşturulan kod değer özniteliğine sahip olmadığı için bu mantıklıdır. Bir giriş alanının değerini doğrulamak için daha iyi bir yol var mı?
Şimdilik bunu test etmek için adres alanının boş olup olmadığını kontrol edebilir ve değer niteliği olmayan bir girdi alanı olup olmadığını kontrol edebilirim. Ama bu dağınık ve verbose. ama çalışan evrensel çek
Örnek uzun: Ben kullanıyorum
if address.first_name.blank?
assert_select '#first_name[value]', 0
assert_select '#first_name[type=text]', 1
else
assert_select '#first_name[value=?]', address.first_name
end
İlgili Bilgiler:
hpricot 0.8.1
Nokogiri 1.1.1
Raylar 2.2.2
Thoughtbot -Shoulda 2.0.5
Webrat Belki 0.4.1
Olası kopyalar (http [bir giriş elemanı Raylar testlerinde Ruby boş olduğunu iddia Nasıl]: // stackoverflow.com/questions/6308158/how-to-assert-that-an-input-element-is-empty-in-ruby-on-rails-tests) – jasondoucette