Я только начинаю с Cucumber и Webrat и добавляю спецификации функций к существующему Rails-приложению. Одна страница в приложении имеет несколько форм на ней, представляя различные способы создания нового объекта Character. Вот упрощенный пример:Как заполнить определенное поле в Webrat, когда несколько имеют одно и то же имя и идентификатор?
<form id="adopt_character_form">
....
<input type="text" name="character[name]" id="character_name">
...
</form>
<form id="spawn_character_form">
....
<input type="text" name="character[name]" id="character_name">
...
</form>
Как вы можете видеть, есть (по крайней мере) два поля, которые имеют такое же имя и идентификатор на странице, хотя они находятся в разных формах, и я не могу найти в документе Webrat rdoc или исходном коде, чтобы указать конкретный.
Я знаю, что я мог бы изменить имя или идентификатор на одном из них, но мне пришлось бы отклоняться от соглашений об именах Rails для этого, чего я бы не хотел. Я мог бы также поместить формы на разные страницы, но это потребует больше изменений в рабочем потоке, чем я хочу. Я мог бы также попытаться объединить их в одну форму, которая была более модульной и динамичной, но необходимость внесения структурных изменений в пользовательский интерфейс только для поддержки данной тестовой структуры кажется немного сомнительной и может быть не всегда осуществимой, плюс я бы для того чтобы требовать javascript.
Можно ли указать одно из этих полей в Webrat, или я должен просто сдаться и попробовать Cucumber в другом проекте?