我使用 Capybara + RSpec 和 capybara_webkit 作为驱动程序。还有一个带有FileApi的JS上传器 我想在这里上传三张图片:
<input type="file" name="image" multiple="" accept="image/*">
当我点击“选择照片”按钮(在浏览器上)时,它会打开一个典型的窗口,我可以从计算机中选择3个文件 。
我想知道如何在水豚上重现它,就像照片选择器打开时一样,我无法控制它。我试图将图片添加到我的测试文件夹并尝试:
attach_file('image', File.absolute_path('../pictures/photo1.JPG'))
但没有结果。
答案 0 :(得分:0)
我终于找到了解决方案。我的输入区域的不透明度设置为0
,这就是为什么我无法附加文件的原因。
所以我需要将其不透明度设置为1:
page.execute_script("$('input[name=file]').css('opacity','1')")