2013-07-31 3 views
7

Как я могу нажать на ссылку с помощью capybara.I нужно нажать на ссылку ВыпускнойHref ссылка нажмите используя водосвинку

<a href="/arts?Occasion=Graduation&amp;top_menu_item_title=+-+Graduation">Graduation</a> 

Я использовал следующий код .Но показывает сообщение об ошибке неопределенного метода click

page.find(:link,"Graduation").click 

также используется Xpath

page.find(:xpath, "//a[@href='/arts?Occasion=Graduation']").click 

это также не wo rking

Но моя проблема в моей странице содержит несколько ссылок на выпуск.

поэтому использование page.all(:link,"Graduation") г eturns Ambiguous match, found 2 elements matching link "Graduation"

+0

Посмотрите на это - http://stackoverflow.com/questions/14513377/how-to-click-first-link-in-list-of-items -после-модернизация к капибары-2-0/14517076 # 14517076 –

ответ

10
page.all(:link,"Graduation") returns Ambiguous match, found 2 elements matching link "Graduation" 

Это означает, что страница содержит несколько текстов дипломного link.so, если вы хотите, чтобы нажать на первый вы можете написать, как этот

page.all(:link,"Graduation")[0].click 

Это будет нажать на первую ссылку и ниже одного нажмите вторую ссылку. Вы можете использовать любого пользователя в своих целях.

page.all(:link,"Graduation")[1].click 

уверен, что это будет работать для вас

2

Сначала попробуйте использовать его без page части. Я никогда не нуждался в этом сам

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

find("a[href='/arts?Occasion=Graduation&amp;top_menu_item_title=+-+Graduation']").click 
Смежные вопросы