<input type='file' id='ok' class='lalalalala'>
我的代码是 attach_file(&#34; OK&#34;&#34; ./文件集/出版者/ upload_pic.jpg&#34) 但我失败了: 故障:
Capybara::ElementNotFound:
Unable to find file field "ok"
那么什么是文件字段? 我怎样才能上传文件?
答案 0 :(得分:18)
来自Capybara的文档:
The file field can be found via its name, id or label text.
你显然已经有了这个,这有点令人费解。是否有一个模态窗口阻止这个和/或page.driver偶然切换到其他东西?我问,因为它实际上并非完全必要与表单按钮交互并导致模式或文件/资源管理器/查找器窗口出现,有时这会混淆page.driver(例如:开关焦点到窗口而不是页面。)
尝试在此步骤之前删除所有click_button操作,然后尝试以下操作:
attach_file('ok', File.absolute_path('./fileset/publisher/upload_pic.jpg'))
这对我来说很有用,在一个超级深刻的父级div中,最终得到了一个按钮类。