我是使用黄瓜和水豚的新手。我需要点击使用capybara将鼠标悬停在网页的某些元素上后显示的链接
例如att.com
1。情景正在徘徊在个人点击att.com
上2。另一种情况是悬停在Shop --Bundles上 - 点击Popular Bundles
如何使用capybara的悬停和点击方法来实现这一目标,还是有其他任何方法可以实现这一目的。
尝试的选项是
find(:xpath, ".//*[@id='ge5p_z2_p1001']").hover
find(:xpath, ".//*[@id='ge5p_z2_t1038']").click
但它抱怨无法找到xpath
答案 0 :(得分:2)
这里有两个选项,取决于你的测试
1)如果您想测试悬停事件是否触发,然后链接是可点击的,请尝试
find('.ge5p_z1-drop-down').hover
expect(page).to have_selector('.ge5p_z1-menu', visible: true) # check that menu is shown (need to have rspec for this)
click_link('att.com')
2)如果您只是想测试下拉链接带您到正确的页面,那么将它们视为链接
click_link('att.com', visible: false) # this is hidden by default
让我知道你是如何继续这样做的,我还没有对它进行过测试,但是应该把你排除在外
答案 1 :(得分:0)
单击一个按钮时出现问题,该按钮仅在鼠标放在图片上时出现(照片),经过大量研究后得到了这个:
find('#follow', visible: false).trigger(:click)
就我而言,按钮是一个链接,只有这样我才能通过测试。