Capybara / Rspec没有捕获ActionController :: UnpermittedParameters错误

时间:2014-10-02 16:51:26

标签: ruby-on-rails rspec capybara

我正在处理向ActiveRecord模型和相应视图添加字段的过程。在我开始之前,我进行了全面的绿色测试。我开始编写以下测试:

scenario "with all correct info" do
  create_vendor "vendor.email@example.com", "vendor_passowrd"
  create_consumer "consumer.email@example.com", "password"
  sign_in_with "consumer.email@example.com", "password"
  click_link "New Order"
  select 'vendor.email@example.com', from: "Vendor"
  fill_in "Order text", with: "my normal order"
  click_button "Submit"

  expect(page).to have_content "my normal order"
end

我使用正确的rails迁移和路由条目将字段添加到模型中。

我原本以为ActionController :: UnpermittedParameters会导致测试失败,因为我还没有更新控制器。但是,这是我遇到的失败:

"失败/错误:期待(页面).to_content"我的正常订单"

当我在浏览器中测试时,我确实得到了ActionController :: UnpermittedParameters,但没有在自动化测试中。

我的问题是测试是否应该获取ActionController :: UnpermittedParameters错误?

1 个答案:

答案 0 :(得分:0)

Capybara模拟Web浏览器请求,因此它将从Rails返回错误页面。 UnpermittedParameters错误不会传播到规范代码本身。

听起来它的工作正常。