Я уже обнаружил, что когда я хочу установить значение для текстового поля, текстовой области или поля пароля, я могу использовать идентификатор, имя или метку как что-то
в fill_in something, :with => some_value
. Однако такой подход терпит неудачу, когда я пытаюсь установить значение в поле (и я хочу сделать это, потому что это обычно заполняемые скрипты на стороне клиента, которые я тестирую отдельно). Как я мог установить такое скрытое поле с помощью Capybara? Является ли это возможным?
HTML:
<input id='offer_latitude' name='offer[latitude]' type='hidden'>
<input id='offer_longitude' name='offer[longitude]' type='hidden'>
спецификация:
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
дает:
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