Capybara - 提交不带按钮的表单

2023-12-20

我正在尝试仅使用 Capybara 和 Rspec(没有 Cucumber 或 Selenium,我知道已经有一个关于此的问题)提交一个没有按钮的表单。

我看到有一个要点是添加一个方法来提交没有按钮的表单:

module SubmitRackTestFormWithoutButton
  def submit_form!
    Capybara::RackTest::Form.new(driver, form).submit({})
  end
end
Capybara::RackTest::Node.send :include, SubmitRackTestFormWithoutButton

https://gist.github.com/989533 https://gist.github.com/989533,但我还没有让它发挥作用,我对此发表了评论:

我得到未定义的方法“submit_form!”对于#Capybara::Node::Element:... 实际上是通过“Capybara::RackTest::Node.send :include, SubmitRackTestFormWithoutButton”方法submit_form!被添加到 节点(不是元素),但 find 返回一个元素

您是否有一些想法来解决这个要点,或者有其他解决方案来提交没有按钮的表单?

Thanks


所有的生产代码都应该是可测试的,因此,如果您添加仅由测试使用的代码,那么测试将毫无意义......

尝试这样做:

page.execute_script("$('form#your-form').submit()")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Capybara - 提交不带按钮的表单 的相关文章

随机推荐