【问题标题】:How to assert that a cookie was cleared in a rails 3 functional test?如何断言在 r​​ails 3 功能测试中清除了 cookie?
【发布时间】:2012-06-27 04:39:26
【问题描述】:

我想为我的 rails 3 控制器之一编写功能测试,该控制器断言给定的 cookie 已被清除。我试过了:

test "cookie should be cleared" do
  @request.cookies["foo"] = "bar"
  put :clear_foo
  assert @response.cookies["foo"].nil?
end

但是,即使控制器是无操作的,此测试也会成功(我已手动确认 cookie 在设置后仍然存在于我的浏览器中)。

有什么想法吗?

澄清一下,这个问题是关于如何测试 cookie 是否被清除,而不是关于如何实际清除它。

【问题讨论】:

    标签: ruby-on-rails testing cookies


    【解决方案1】:

    好像

    assert cookies["foo"].nil?
    

    完成这项工作。另见 Chu Yeow 的博文"Some functional testing gotchas in Ruby on Rails"

    【讨论】:

    • 在功能测试中它可以工作。但在集成测试中,您将无法测试在操作中设置的 cookie。
    猜你喜欢
    • 2023-03-09
    • 2015-10-29
    • 2011-09-16
    • 2014-02-21
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 2011-04-04
    • 2016-03-25
    相关资源
    最近更新 更多