【发布时间】:2021-04-19 07:44:32
【问题描述】:
我正在与 rspec 和一键作战。在我的 html.erb 我有
<button name="Collapse bank accounts" class="btn btn-sm btn-primary rounded-circle" type="button" data-bs-toggle="collapse" data-bs-target="#of-bank-ucties" aria-expanded="false" aria-controls="of-bank-ucties">
<i class="fa fa-plus"></i>
</button>
从 fontawesome 生成带有 svg 的按钮。
在我的 rspec 我有
button_to_expand_bu = find_button('Collapse bank accounts')
button_to_expand_bu.click
expect(page).to have_selector(:css, '[data-bs-toggle="collapse"][data-bs-target="#of-bank-ucties"][aria-expanded="true"]')
问题是测试在 50% 的运行中都失败了,我不知道为什么它如此不可靠。
我尝试使用 find(path)、click_button(button)、find().click 找到按钮,但每个按钮都有相同的结果。有时会通过,有时不会...
这里到底发生了什么?
我正在使用最新的 gems 并且按钮是可见的,我在屏幕截图中看到了他,它不可能是不可见的。当测试在铬中进行时,我看到测试停止,当它应该单击按钮时,等待 1 秒并显示它失败......
【问题讨论】:
-
您得到的确切错误是什么,错误来自测试的哪一行?
-
无法找到具有给定css的元素,错误行是expect(page)...
标签: rspec capybara ruby-on-rails-6