2013-11-19 3 views
4

я не знаю, как щелкнуть ссылку HREF в водосвинку полтергейста, у меня есть пример кода, как это в моем тестированииводосвинка полтергейст нажмите не работает

it "test", :driver => :poltergeist do 
    page.find("#link1").click 
end 

и в моем HTML, у меня есть образец, как этот

<table class="index"> 
    <tbody> 
    <tr> 
     <td><a href="http://localhost:3000/users/3" id="link1">hey click me</a></td> 
    </tr> 
    </tbody> 
</table> 

Как нажимать ссылку в capybara poltergeist? я уже попробовать «click_link», «click_button» и любой другой, но до сих пор не работает

+0

вы уверены, что 'page' переменная содержит HT ML? Вы получили сообщение об ошибке? Что это? – sevenseacat

ответ

1

Я хотел бы попробовать использовать

all(:xpath,'//a[@id="link1"]').first.click 

или find(:xpath,'//a[@id="link1"]').trigger('click')

Если это неоднозначное, вы можете добавить на более подробную информацию такие как

find(:xpath,'//a[@id="link1"]', :text => 'hey click me').trigger('click')

+0

работает, спасибо – tardjo

+1

Этот ответ тоже работал для меня, но не затрагивает, почему Capybara не будет запускать ссылку, используя click_link. В моем случае, при использовании click_link ("link1"), связь будет срабатывать иногда, случайным образом и в другое время. – vanboom

+0

@vanboom - ваша страница очень тяжелая javascript? при выполнении .click браузер пытается «щелкнуть мышью», когда вы запускаете («нажмите»). он использует щелчок javascript. Сообщите мне, поможет ли это вам в правильном направлении. –

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