Django测试时的TypeError

2024-07-04 09:13:33 发布

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

我刚在Django或python工作,但我目前正在一个同时使用这两种工具的项目中工作。现在我正努力让我的测试生效。我大约3个月前写了这些简单的测试,我百分之百肯定它们在那时起作用。另外,当我运行服务器并手动尝试不同的搜索时,我会得到预期的结果,因此我知道视图至少是正确的(我知道它很可怕,速度很慢,我会努力解决这个问题)。我搜索过这个错误,但是我发现的唯一相关的东西是Ubuntu是我的问题,但是我在Ubuntu和windows7上都试过了。我不知道从那时到现在发生了什么,但他们给了我以下错误:

在编辑:我有不知道为什么我所有的缩进都被忽略了:|哦,在一些建议之后,我改变了一些事情,现在我遇到了这样的失败:

enrique@enrique-XPS-L521X:~/Documents/Reeduq$ 
python manage.py test Search
Creating test database for alias 'default'...
FF
======================================================================
FAIL: test_private_courses_search (Search.tests.SearchTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/enrique/Documents/Reeduq/Search/tests.py", line 18, in test_private_courses_search
  self.assertEqual(response.context['found_entries'],[])
  AssertionError: [] != []
======================================================================
FAIL: test_public_course_search (Search.tests.SearchTests)
----------------------------------------------------------------------
Traceback (most recent call last): 
File "/home/enrique/Documents/Reeduq/Search/tests.py", line 29, in test_public_course_search   
   self.assertEqual(response.context['found_entries'],['<Course: test>'])
   AssertionError: [<Course: test>] != ['<Course: test>']
----------------------------------------------------------------------
Ran 2 tests in 0.018s

FAILED (failures=2)
Destroying test database for alias 'default'...

我读到这意味着我没有__unicode__函数或类似的功能,但我的课程模型和用户模型各有一个,所以我不知道该怎么做

这是测试代码:

^{pr2}$

这是视图代码:

^{3}$

谢谢你的帮助。在


Tags: inpytest视图searchubuntu错误tests
1条回答
网友
1楼 · 发布于 2024-07-04 09:13:33

不确定从哪里得到unicode注释。 response.context['found_entries']在幕后做response.context.__get__item('found_entries'),除了响应.上下文没有。 正如@AlexShkop指出的,听起来你的响应并不是你所期望的,可能是因为你实际上得到了302重定向(或者401/403)。您可以尝试@alecxe的建议,或者使用内置的客户端.login能力(创建虚拟用户后)

相关问题 更多 >

    热门问题