0

我正在尝试使用 Selenium 在 Capybara、Rails 5.2 功能规范中测试文件上传。

我一直在寻找这个并找到了一些建议。其中之一是如何测试使用 Capybara 和 Dropzone.js 上传文件?

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

4

2 回答 2

0

在使用 Capybara 测试应用程序时, 99% 的时间visible: false作为选项find表明您做错了什么。

如果您只是在出于样式原因隐藏文件输入时上传文件,那么 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)
于 2018-07-12T16:24:16.840 回答
-1

神奇的代码:

        find('input[type="file"]', visible: false).send_keys \
            Rails.root.join('spec', 'resources', 'test.png')
于 2018-07-12T08:37:45.743 回答