ruby-on-rails - chiguiro - roedor mas grande del mundo
¿Cómo hago clic en este botón en la capibara? (4)
Respuesta del autor.
El problema está dentro del código html:
<div>
<form>
<div>
</div>
</div>
<input type="submit" value="Verify" name="verify" id="verify" class="button">
</form>
Debido a que hay un redundante </div>
, el <input>
se trató fuera del formulario, por lo tanto, el capybara
causa esos errores. Después de eliminar el redundante </div>
, todo funciona bien.
Por favor ayúdame a resolver este problema con capibara.
Tengo un botón como este en capibara:
<input type="submit" value="Verify" name="verify" id="verify" class="button">
Lo intenté con
click_button "verify"
pero da error:
Failure/Error: find(''#verify'').click
NoMethodError:
undefined method `node_name'' for nil:NilClass
¿Intentaste "doblar" los selectores de CSS? Este ha sido mi mecanismo de acceso desde capybara-2.4.3
find("#verify").find("[name=verify]").click
cualquier otro atributo además del # id-vale debería hacer el truco, por ejemplo
find("#verify").find(".button]").click
Si tiene una ID para un elemento, solo use el enfoque de @ bonzofenix pero hágalo un poco más simple:
within ''form'' do find(''#verify'').click end
Trate de agregar js: true
en la describe
. Esto sucede cuando no tiene un formulario que contiene el botón.