Капибара не находит элементов с подчеркиванием в имени - PullRequest
1 голос
/ 14 августа 2011

Мне интересно, что я что-то упустил или нашел ошибку; надеясь, что кто-то еще может помочь.

У меня есть несколько полей в форме. Все те, у кого есть отдельные слова, найдены и заполнены, без проблем. Все те с несколькими именами слов нет. Это ожидаемое поведение?

пример:

fill_in "Something", :with=> "value" 

работает

fill_in "Something Else", :with => "another"

не

Я пытался изменить его на:

fill_in "something_else", :with => "another"

и это тоже не получается, то же сообщение

"cannot fill in, no text field, text area or password field with id, name, or label 'something_else'"

Мне интересно в этот момент, ожидает ли Капибара _ границ, и поэтому он не может найти их, если у них есть несколько таких слов. Кто-нибудь еще сталкивался с этой проблемой? Есть ли исправление?

Ответы [ 2 ]

1 голос
/ 28 августа 2011

Поработав еще некоторое время, я обнаружил, что способ сделать это - фактически передать атрибут полного имени, который вы ожидаете там (я думаю, что средство сопоставления не может определить, какие части пробелов являются именем объектаНедостаток названия имущества).Он выглядит следующим образом:

fill_in "obj[one_two]", :with=> "value"

Допустим, вы хотите заполнить регистрационную форму пользователя, это может быть:

fill_in "user[password_confirmation]", :with => @password

, если вы ранее заполнили @password

0 голосов
/ 29 ноября 2014

Я знаю, что это старый вопрос, но он работал для меня в капибаре (2.3.0) и может помочь другим:

fill_in "Password confirmation", with: "test"

обратите внимание на строчную букву "c", это также работало в ситуации с вложенной формой.

Так что из того, что я могу собрать, только первая буква имени поля должна быть в верхнем регистре, если она содержит пробелы.

...