在我的单元测试中,我需要在会话中添加一个变量,因为该变量在正在测试的视图中使用。 Django的文件说,这是可能通过以下方式(https://docs.djangoproject.com/en/1.3/topics/testing/#django.test.client.Client.session):Django单元测试在会话中添加一个变量
def test_something(self):
session = self.client.session
session['somekey'] = 'test'
session.save()
此代码示例实际上是行不通的,因为你会得到错误的字典不具有的功能保存。我还尝试了各种其他方式来改变会话内部的内容,但还没有找到改变它的方法。 我知道它是什么意思,我回来的是一个字典对象,所以它没有保存功能。但会话字典在添加密钥时也不会更新。
使用self.client.session时的文档状态应该返回一个SessionStore对象而不是一个字典。
你使用'unittest'或'django.utils.unittest'吗? – Gabriel
django.utils.unittest –
为什么你需要保存它?你在哪里检查其他地方的会议? –