capybara - mascota - Capibara valor de prueba de campo oculto
capybara pet (3)
También puede indicar a Capybara que no ignore los elementos ocultos globalmente en su spec_helper.rb
o equivalente. El comportamiento predeterminado puede ser anulado:
# default behavior for hidden elements
# Capybara.ignore_hidden_elements = false
# find all elements (hidden or visible)
page.all(".articles .article[id=''foo'']")
# find visible elements only (overwrite the standard behavior just for this query)
page.all(".articles .article[id=''foo'']", :visible => true)
# changing the default behavior (e.g. in your features/support/env.rb file)
Capybara.ignore_hidden_elements = true
# now the query just finds visible nodes by default
page.all(".articles .article[id=''foo'']")
# but you can change the default behaviour by passing the :visible option again
page.all(".articles .article[id=''foo'']", :visible => false)
Ejemplos tomados de este artículo .
Tengo un formulario con un campo oculto que contiene la fecha actual.
Estoy tratando de averiguar cómo escribir un buscador de capibara para:
- Comprueba que el campo está ahí
- Compruebe el valor del campo
¿Es esto posible con Capibara?
sólo haz esto:
find("#id_of_hidden_input", :visible => false).value
es simple, puedes hacerlo usando find_by_css
o usando xpath como sigue
page.find_by_css(''#foo .bar a'') #foo is the id the foo has .bar class
page.find(''/table/tbody/tr[3]'') #path of the element we want to find