对于集成测试,我需要使用带有Capybara的poltergeist驱动程序下载CSV文件。在selenium(例如firefox / chrom webdriver)中,我可以指定下载目录,它工作正常。但在poltergeist中,有没有办法指定下载目录或任何特殊配置?基本上我需要知道下载的东西如何使用poltergeist,Capybara,Phantomjs。
我可以使用ruby读取服务器响应头作为Hash,但无法读取服务器响应以获取文件内容。任何线索?或者请帮助。
答案 0 :(得分:2)
最后,我通过在Ruby代码中使用CURL而不使用任何webdriver解决了下载部分。这个想法很简单,首先,我通过CURL提交了登录表单并将cookie保存到我的服务器中,然后使用保存的cookie提交(通过CURL)CVS Export表单
post_data = "p1=d1&p2=d2&p3=d3"
`curl -c cookie.txt -d "userName=USERNAME&password=PASSWORD" LOGIN SUBMIT_URL`
csv_data = `curl -X POST -b cookie.txt -d '#{post_data}' SUBMIT_URL_FOR_DOWNLOAD_CSV`