Eu gostaria de fazer o seguinte, mas não posso devido à natureza de fill_in esperar um localizador como o primeiro argumento.
find(:css, "input[id$='donation_pledge_hundreds']").fill_in :with => "10"
Eu também tentei fazer
element = find(:css, "input[id$='donation_pledge_hundreds']")
fill_in element.<method> , :with => "10"
mas não há métodos que retornem quaisquer dados para identificar o elemento para fill_in.
Alguma ideia da melhor maneira de encontrar um campo por meio de um regex para usar com fill_in?
find(:css, "...").set("10").send_keys(:return)
para pressionar voltar depois. Ele aciona os eventos relevantes. Eu não testei, mas você também pode,find(:css, "...").set("10").trigger(:blur)
se for o seu lugar.Em vez de um método, você pode usar colchetes para retornar
:name
ou:id
, por exemplo,element = find(:css, "input[id$='donation_pledge_hundreds']") fill_in element[:name], :with => "10"
A mesma abordagem pode ser usada comselect
-select my_type, from: find('select[name$="[type]"]')[:name]
fonte
É importante notar que você pode encadear seus achados.
fonte
fonte
fonte