【发布时间】:2011-05-06 23:11:06
【问题描述】:
我有一个 rails3 应用程序,它在我的基本应用程序控制器中使用 protect_from_forgery。我正在使用 ActionDispatch::IntegrationTest 并希望确保在某些集成测试期间存在真实性令牌。
我不希望执行帖子的每个功能测试都必须传递authenticity_token,所以我的test.rb 文件指定:
config.action_controller.allow_forgery_protection = false
正如 rails 文档所建议的那样。
但是,对于集成测试,我很想确保我的表单正确发送了真实性令牌。如果不更改 config/environments/test.rb 中的全局设置,我找不到任何方法来做到这一点
如果我所有的表单都是用form_for 生成的,我会相信 rails 会处理这个问题,但是我使用 ExtJS 并且有许多需要手动指定的 ExtJS 表单,所以我真的应该测试一下管道一切正常。
【问题讨论】:
标签: ruby-on-rails security ruby-on-rails-3 testing integration-testing