使用qunit测试emberjs / rails / devise应用程序时“无法validationCSRF令牌真实性”

我有一个使用devise进行用户身份validation的emberjs / rails应用程序。 我正在使用qunit构建集成测试。 我在运行测试之前手动登录应用程序。 可以在测试期间处理GET请求,但POST请求失败。 特别是,在发出POST请求时,我从设计中得到“无法validationCSRF令牌真实性”错误。 当我重新加载测试时,我退出了应用程序。

我怎么得到qunit与设计玩得很好?

您需要将csrf_meta_tags添加到用于运行qunit测试的index.html.erb中,并且还需要包含jquery-ujs。 看看https://github.com/frodsan/qunit-rails

或者,您可以将其添加到application_controller:

skip_before_filter :verify_authenticity_token if Rails.env.test?