3
在views.py:使用cookie測試Django的web應用程序/會話
get_dict = Site.objects.getDictionary(request.COOKIES['siteid'])
{得到一個字典,根據ID從cookie的站點信息}
在tests.py:
from django.test import TestCase
class WebAppTest(TestCase):
def test_status(self):
response = self.client.get('/main/',{})
response.status_code # --->passed with code 200
response = self.client.get('/webpage/',{'blog':1})
response.status_code # ----> this is failing
爲了呈現博客頁面不言而喻視圖它使用現有的cookie,並處理得到一本字典,呈現模板,運行應用程序時,工作正常。但測試失敗。從來沒有測試Django的webapps我不知道如何測試它的權利。這是回溯。
回溯(最近通話最後一個):
File "<console>", line 2, in <module>
File "/usr/lib/pymodules/python2.6/django/test/client.py", line 313, in post
response = self.request(**r)
File "/usr/lib/pymodules/python2.6/django/core/handlers/base.py", line 92, in get_response
response = callback(request, *callback_args, **callback_kwargs)
File "/var/lib/django/data/../webpage/views.py", line 237, in getCostInfo
get_dict = Site.objects.getDictionary(request.COOKIES['siteid'])
KeyError: 'siteid'
經歷了一些網上的樣品,但無法找到的東西,在深度與餅乾/會話交易。任何想法或指引有用的鏈接,高度讚賞。
啊session.save()給這個AttributeError的:「快譯通」對象有沒有屬性「保存」。評論說,部分沒有work.this應該是一個很好的start.Could請您賜教爲什麼它沒有工作時SITEID存儲在會話。謝謝傑克。 – stackover 2011-03-30 19:19:27
因爲沒有'siteid'了會議。 – 2011-03-30 20:25:08
我也有存儲用戶在選擇的request.session [「選擇」在我的意見。它再次抱怨,所以我嘗試在session.update({'choice':'technology'})測試中更新client.session。這不起作用。它給了我關鍵的錯誤「選擇」。任何想法?對不起,如果這是不適合發佈它的地方。 – stackover 2011-03-30 21:04:22