使用FileApi将文件上载到输入区域

时间:2015-11-27 12:18:40

标签: ruby-on-rails ruby rspec capybara capybara-webkit

我使用 Capybara + RSpec capybara_webkit 作为驱动程序。还有一个带有FileApi的JS上传器 我想在这里上传三张图片:

<input type="file" name="image" multiple="" accept="image/*">


当我点击“选择照片”按钮(在浏览器上)时,它会打开一个典型的窗口,我可以从计算机中选择3个文件 。 我想知道如何在水豚上重现它,就像照片选择器打开时一样,我无法控制它。我试图将图片添加到我的测试文件夹并尝试:

attach_file('image', File.absolute_path('../pictures/photo1.JPG'))

但没有结果。

1 个答案:

答案 0 :(得分:0)

我终于找到了解决方案。我的输入区域的不透明度设置为0,这就是为什么我无法附加文件的原因。 所以我需要将其不透明度设置为1:

page.execute_script("$('input[name=file]').css('opacity','1')")