Ответ 1
Я думаю, проблема в том, что все значения возвращают соответствие, потому что все они содержат "Сохранить".
Попробуйте назначить каждому отдельный идентификатор и использовать его.
Я работаю с rails 3 и в настоящее время пишу тест с capybara, используя драйвер selenium, Я имею вопрос как ниже
В одной форме у меня есть 3 кнопки с именем "сохранить и добавить другое", "сохранить и продолжить редактирование" и "сохранить", Теперь, если я попытаюсь сохранить форму capybara, как показано ниже
click_button 'Save'
Затем это вызывает ошибку с именем "Сохранить" с идентификатором, заголовком или значением, не найденным Теперь, если я удаляю вышеуказанные 2 кнопки, а затем я пытаюсь, то он работает
FYI, My 3 button html, как показано ниже,
<input class="btn" type="submit" value="Save and add another" name="_addanother" data-disable-with="Save and add another">
<input class="btn" type="submit" value="Save and continue editing" name="_continue" data-disable-with="Save and continue editing">
<input class="btn" type="submit" value="Save" name="_save" data-disable-with="Save">
Пожалуйста, дайте мне знать, если у кого-то есть идея.
Я думаю, проблема в том, что все значения возвращают соответствие, потому что все они содержат "Сохранить".
Попробуйте назначить каждому отдельный идентификатор и использовать его.
Соответствие с точностью - из документов GitHub. Использование точности, вероятно, будет иметь меньшее влияние, чем изменение ваших шаблонов.
click_button('Save', exact: true)
Это позволит найти точное совпадение и пропустить действие "Сохранить blah".
click_button методы ожидают id, name, значение кнопки .Below будет работать.
click_button 'Save and add another'
click_button 'Save and continue editing'
И последняя кнопка работает без ошибок, потому что ее значение равно "Сохранить"
click_button 'Save'
Я придумал следующее решение
модуль ValidUserRequestHelper
# for use in request specs
def sign_in_as_a_valid_user
before(:each) do
user = FactoryGirl.create :user
visit user_session_path
fill_in 'user_email', :with => '[email protected]'
fill_in 'user_password', :with => 'foobar'
click_button 'Einloggen'
end
end