如何使用Capybara Rails 5.2测试React Dropzone

时间:2018-07-11 23:11:37

标签: capybara ruby-on-rails-5.2 react-dropzone

我正在尝试使用硒对Capybara,Rails 5.2功能规范中的文件上传进行测试。

我一直在寻找这个,并找到了一些建议。其中之一是How do you test uploading a file with Capybara and Dropzone.js?

但是,这些解决方案适用于jQuery和Dropzone.js。有人对此有解决方案吗?

2 个答案:

答案 0 :(得分:0)

99%的时间通过visible: false作为find的选项表示使用Capybara测试应用程序时做错了事。

如果您试图做的就是在出于样式原因而隐藏文件输入时上传文件,则Capybara文档会提供所有所需信息-https://www.rubydoc.info/gems/capybara/Capybara/Node/Actions#attach_file-instance_method-以及专门用于处理这种情况的选项

attach_file(Rails.root.join('spec', 'resources', 'test.png'), make_visible: true)

答案 1 :(得分:-1)

魔术代码:

        find('input[type="file"]', visible: false).send_keys \
            Rails.root.join('spec', 'resources', 'test.png')