如何使用cucumber / capybara测试rails web服务的上传图像?

时间:2013-01-21 00:59:26

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

我是使用Cucumber测试Rails应用程序的新手,特别是测试Rails Web服务。 我试图在步骤定义中使用post方法上传图像, 但是,看起来它从不上传,更不用说保存图像了。

    When /^I get json from "(.*)" API endpoint with:$/ do |path, input|
      json = JSON.parse(JsonSpec.remember(input))
      photo = fixture_file_upload(photo_path_to(data), 'image/jpeg')
      post api_path_to(path), json, :photo => photo
    end

我相信我完全错了,但我找不到如何用黄瓜正确发布它的方法。 我可以知道如何解决这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我是这样做的:

def file_attachment
 fixture_file_upload("/images/pic.png", 'image/png')
end

然后以我的规格为例:

post 'create', { photo:file_attachment }