I am trying to submit a form without button using just Capybara and Rspec (no Cucumber or Selenium, I know there is already a question about that).
I've seen there is a gist to add a method to submit a form without button:
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, but I've not gotten it to work and I left a comment on it:
I get undefined method `submit_form!' for #Capybara::Node::Element:... actually by "Capybara::RackTest::Node.send :include, SubmitRackTestFormWithoutButton" the method submit_form! is added to the Node (not to the Element), but find return an Element
Do you have some idea to work out that gist, or some other solution to submit a form without button ?
Thanks
All your production code should be testable, so if you add a code that is only used by the test than the test will make no sense...
Try to do this instead:
page.execute_script("$('form#your-form').submit()")
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With