2012-04-09 4 views
12

Я работаю с рельсами 3 и в настоящее время написания теста с водосвинкой использованием драйвера селена, У меня есть вопрос, как показано ниженажмите на один Конкретную кнопку с помощью водосвинки в рельсах

В одной форме я 3 кнопки с именем «сохранить и добавить другой»,„сохранить и продолжить редактирование“и„сохранить“ Теперь, если я пытаюсь сохранить форму, водосвинки ниже

click_button 'Save' 

Тогда это проливает ошибка называется кнопка„сохранить“с идентификатором, название или значение не найдено Теперь, если я удаляю вышеуказанные 2 кнопки, а затем я пытаюсь это сделать, то он работает

FYI, HTML мой 3 кнопки, как показано ниже,

<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">

Пожалуйста, дайте мне знать, если у кого есть идея.

+0

Попробуйте click_button «Сохранить» (двойные кавычки). Вы пытались добавить отличительный идентификатор каждой кнопки и использовать это вместо ценности? – DanS

+0

Dans, да, я попробовал добавить идентификаторы к кнопкам, но это не работает –

+0

Какие идентификаторы вы им дали? – DanS

ответ

9

Я думаю, что проблема в том, что все значения возвращают матч, потому что все они содержат «Сохранить».

Попробуйте назначить каждому отличительный идентификатор и использовать его вместо этого.

+1

Хмм Спасибо, у меня есть идентификаторы, и это работает –

0

click_button методы ожидают идентификатор, имя, значение кнопки.Below будет работать.

click_button 'Save and add another' 
click_button 'Save and continue editing' 

И последняя кнопка работает без каких-либо ошибок, потому что его значение «Сохранить»

click_button 'Save' 
+0

Я думаю, проблема в том, что последняя работает только тогда, когда другие кнопки удалены ... – DanS

+0

Спасибо, но да, я знаю, что кнопка «Сохранить» должна работать, если я пишу 'click_buttion 'Save'', но в настоящее время она не работает, и она выдает ошибку, как я сказал в своем qustion. если я удалю мои выше 2 кнопки, то только этот 'click_button 'Save'' работает –

+0

Да DanS, вы правы .. вот в чем проблема –

-1

я придумал следующее решение

модуль 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]email.com' 
    fill_in 'user_password', :with => 'foobar' 
    click_button 'Einloggen' 
    end 
end 
1

Matching With Exactness - от докторов GitHub. Использование точности, вероятно, будет иметь меньшее влияние, чем изменение ваших шаблонов.

click_button('Save', exact: true)

Это только найти точное совпадение и пропустить «Сохранить мля» действия.

Смежные вопросы