如何正确地对Django会话进行单元测试?

2024-06-08 22:09:27 发布

您现在位置:Python中文网/ 问答频道 /正文

Django会话的行为在“标准”视图代码和测试代码之间发生变化,因此不清楚如何为会话编写测试代码。在谷歌上搜索这条消息会产生两条关于这个问题的相关讨论:

  1. Easier manipulation of sessions by test client

  2. test.Client.session.save() raises error for anonymous users

我很困惑,因为这两张票都有不同的处理方法,而且都被接受了。我想这意味着他们被修补了,现在的行为不同了。我也不知道这些补丁会属于哪个版本。在

如果我用django1.0编写一个单元测试,如何设置会话存储以使会话像在浏览器中那样工作?在


Tags: ofdjango代码testclient视图消息标准
1条回答
网友
1楼 · 发布于 2024-06-08 22:09:27

我不太明白你说的“标准”视图和“测试”代码之间的行为变化是什么意思,也许你应该详细说明一下。在

但是关于如何测试会话,我确实认为有一些方法。在

  1. 您必须了解django会话是如何工作的,请阅读应用程序中使用的会话包的单元测试。这是关于理解服务器端是如何工作的。在
  2. 您可能需要捕获浏览器和服务器之间的一些对话(例如使用FIREBUG)

因此,您面临的问题是,当您与服务器对话时,您没有将登录时获得的会话标识传递给服务器。比如把它放进去(我不太记得了)。在

解释一下,在这里,你必须明白,什么是重要的,一旦你明白了。在

相关问题 更多 >