我在Capybara运行Ruby on Rails集成测试。它目前失败,因为面板与我需要点击的按钮重叠。所以,我试图点击一个id为“click-to-close”的图标,它将关闭面板,然后点击它下面的按钮。但是,当我运行Capybara测试时,关闭图标不会出现。
这是有问题的按钮 - 它使用字体真棒双角(>>)图标。
<div class="fa fa-angle-double-right fa-lg right-sidebar-show close-button" id="click-to-close"></div>
以下是我正在进行的Capybara测试的一部分:
page.accept_confirm do
sleep 5.seconds #wait for help dash to appear
page.save_screenshot "XPath.png"
page.find("#click-to-close").click
sleep 5.seconds #wait for help dash to disappear
click_on "Remove", wait: 25, match: :first
end
答案 0 :(得分:0)
我遇到了这个问题:
https://github.com/thoughtbot/capybara-webkit/issues/808
https://github.com/thoughtbot/capybara-webkit/issues/728
最佳解决方案是使短划线的整个顶栏可以点击,并让Capybara自动测试搜索顶部栏的ID并单击它。问题中没有提供足够的信息,但我们可以说ID是#top-bar。你会这样做:
page.accept_confirm do
sleep 5.seconds #wait for help dash to appear
page.find("#top-bar").click
click_on "Remove", wait: 25, match: :first
end