Michael Hartl'ın Ruby on Rails Tutorial bölümünü takip ediyorum. Rspec/capybara kullandığımda, fill_in yöntemi beni şaşırtıyor.fill_in Rspec/Capybara'da nasıl çalışır?
<%= f.label :name %>
<%= f.text_field :name %>
Bu benim test kodu edilir:
fill_in "Name", with: "Example User"
O etiket gibi görünüyor ve text_field hem giriş alanını bulmak için FILL_IN için gerekli olan aşağıdaki görünüm kodu var. f.label
'u çıkar veya <%= f.text_field :name %>
'u <%= f.text_field :another_name %>
olarak değiştirirseniz, sınama ElementNotFound
hatasını verir. Burada fill_in'in nasıl çalıştığını herkes anlatabilir mi? Giriş alanı ve etiketin ikisi de fill_in
yöntemi için gerekli midir?
anlamına mı geliyor? –
@JoeyHu, gerçekten değil. Cevabımdaki 'html' snippet'ine bir göz atın - etiketin' for' özniteliği, girdinin 'id' ile aynı değere sahip olduğundan, sayfada gerçek konumdan bağımsız olarak birbirine bağlanırlar. – twonegatives