2011-05-18 15 views
8

Capybara dsl kullanarak bir onay kutusunun ilk örneğini bulmak istiyorum. Bunu yapmayı bilen var mı? Capybara'daki ilk onay kutusunu nasıl bulurum?

Ben bu olurdu belki, ama işe yaramadı: Eğer XPath kullanıyorsanız

find("input[type='checkbox']") 

:

find('input:first', :type => 'checkbox') 

cevap

17

Capybara.default_selector sonra CSS olarak ayarlanır varsayarsak farklı olacak.

Güncelleştirme (Haziran 2013):, @tmg noktaları dışarıda, Capybara 2'nin davranışı değişti. Eğer n'inci onay kutusu (örneğin 25-th) bulmak istiyorsanız

+0

Bu çok İLK onay kutusunu bulabilir mi? – btelles

+2

Evet. Alternatif olarak: all ("input [type = 'checkbox']") –

+0

Harika! Teşekkür ederim! – btelles

10

Sadece ilk onay kutusunu

first("input[type='checkbox']") 

bulmak için tmg 'in doğru yolu işaret etmek:

find(:xpath, "(//input[@type='checkbox'])[25]") 

Ancak, arama alanınızı daraltmak için içinde 'u kullanmak daha iyidir.

FIR =
within 'div.div_class' do 
    find("input[type='checkbox']") 
end 
İlgili konular