J'ai déjà constaté que lorsque je veux mettre en valeur à un champ de texte, zone de texte ou champ de mot de passe, je peux utiliser l'id, le nom ou l'étiquette en tant que something
en fill_in something, :with => some_value
. Cependant, une telle approche ne tient pas lorsque je tente de régler la valeur de <input type="hidden">
champ (et je veux le faire parce que ceux-ci sont normalement remplis de scripts côté client qui j'ai tester séparément). Comment pourrais-je définir un champ caché avec Capybara? Est-il possible?
HTML:
<input id='offer_latitude' name='offer[latitude]' type='hidden'>
<input id='offer_longitude' name='offer[longitude]' type='hidden'>
spec:
describe "posting new offer" do
it "should add new offer" do
visit '/offer/new'
fill_in 'offer[latitude]', :with => '11.11'
fill_in 'offer[longitude]', :with => '12.12'
click_on 'add'
end
end
donne:
1) posting new offer should add new offer
Failure/Error: fill_in 'offer[latitude]', :with => '11.11'
Capybara::ElementNotFound:
cannot fill in, no text field, text area or password field with id, name, or label 'offer[latitude]' found