如何使用cucumber / capybara测试文件下载对话框

时间:2011-03-17 11:16:22

标签: ruby-on-rails-3 rspec cucumber capybara

我四处搜索,找不到如何使用水豚/黄瓜测试文件下载框?

以下图片更清楚地询问问题。


How to test file download using capybara

3 个答案:

答案 0 :(得分:2)

这与我刚刚回答的另一个问题类似,希望它有助于Anybody have idea how to test file download using cucumber?

答案 1 :(得分:1)

@Millisami Capybara :: NotSupportedByDriverError为我固定!

我要做的就是从我的黄瓜测试中删除@javascript标记,其中包括。我的意思是:

@search     场景:接收文件     ...

而不是

@search @javascript
    场景:接收文件     ...

希望它有所帮助: - )

答案 2 :(得分:0)

下载框是浏览器的功能。 Capybara模拟浏览器,但没有所有UI等...(例如,它看起来像你的应用程序的浏览器,所以使用它你大部分跳过整个文件下载UI的东西。它会看起来像有人做了什么他们做的浏览器需要告诉浏览器将文件放在何处并开始下载)

如果您正在尝试测试下载框,(除了开始下载所需的点击之外),您现在正在测试浏览器,而不是您的应用程序。如果这是你的章程的一部分并且值得你的时间,那么就像你自己一样。

要实际测试下载框,你必须要有一个浏览器实例,并使用像Firewatir / Watir或Selenium这样的工具来实际“驱动”浏览器,以及其他一些宝石实际上自动化操作系统UI级别(在Windows上我们通常使用autoit)以便点击内容并填写浏览器文件下载UI的值。