我的应用程序中有一个错误,如果用户连续两次非常快速地单击表单的提交按钮,就会发生该错误。我可以在生产环境和我的开发环境中可靠地重现这一点。
我可以用 Capybara/poltergeist/phantomjs 重现这个吗?find("#my-button").double_click
、 find("#my-button").click.click
、 execute_script("$('#register-button').click().click();")
和 execute_script
的其他变体不起作用。
尽管 console.log
日志显示 click
确实被调用了两次,但我尝试的所有操作都只会导致我的服务器端代码被调用一次。所以我怀疑 capybara 和 poltergeist 模拟这种行为的能力从根本上缺少一些东西。
有没有办法以某种方式在较低级别调用 phantomJS 并实现这一目标?
我确实尝试过 increasing 我的网络服务器的并发性,但没有帮助。
最佳答案
正如您所猜测的 - double_click
与单击两次不同。有两次点击你可以做
find("#my-button").click.click
或者,根据您的错误,您可能需要在两次点击之间休息一下
find("#my-button").tap do |b|
b.click
sleep 0.1
b.click
end
关于ruby-on-rails - 如何在 Capybara 中模拟两次快速点击提交按钮?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44191271/