隐藏按钮水豚

Hidden buttons Capybara

我正在尝试测试水豚中的隐藏按钮,但到目前为止还无法在没有出现以下错误的情况下正常工作。

undefined method `click_on' for [#<Capybara::Element tag="button">]

有人可以建议这样做的正确语法。 调用如下:

When(/^I tap on the play button$/) do
    expect(page).to have_selector('.playback', visible: false)
    page.all('.playback').click_link

如果您的按钮被隐藏,我认为您需要这样做:

find(".playback", visible: false).click

你也可以试试

Capybara.ignore_hidden_elements = false
find(".playback").click
Capybara.ignore_hidden_elements = true

好的,从 comments/answers 开始。这是我会做的:

  • 取消隐藏按钮。
  • 使规范通过。 @tridadc 的回答应该有效。
  • 将测试标记为 pending/TODO
  • 将按钮恢复为隐藏状态。
  • 当按钮就绪并可见时,将测试从挂起更改为活动。