请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

跑单个用例通过,但是跑整个用例套失败

views的测试,每个用例单独跑能通过,跑测试套就出现bad request,请问老师是什么原因?

报错如下:
Testing started at 20:28 …
ssh://ubuntu@152.32.132.203:22/home/ubuntu/.virtualenvs/venv/bin/python -u /home/ubuntu/.pycharm_helpers/pycharm/django_test_manage.py test zanhu.news.test.test_views /home/ubuntu/website/zanhu
Creating test database for alias ‘default’…
System check identified no issues (0 silenced).

WARNING 2020-11-12 20:29:04,541 log 1114 140198981699392 Bad Request: /news/get-thread/
Failure
Traceback (most recent call last):
File “/home/ubuntu/website/zanhu/zanhu/news/test/test_views.py”, line 72, in test_get_thread
assert response.status_code == 200
AssertionError

WARNING 2020-11-12 20:29:04,541 log 1114 140198981699392 Bad Request: /news/get-thread/
Failure
Traceback (most recent call last):
File “/home/ubuntu/website/zanhu/zanhu/news/test/test_views.py”, line 72, in test_get_thread
assert response.status_code == 200
AssertionError

WARNING 2020-11-12 20:29:04,663 log 1114 140198981699392 Bad Request: /news/like/
Failure
Traceback (most recent call last):
File “/home/ubuntu/website/zanhu/zanhu/news/test/test_views.py”, line 62, in test_like_news
assert response.status_code == 200
AssertionError

WARNING 2020-11-12 20:29:05,127 log 1114 140198981699392 Bad Request: /news/post-comment/
Failure
Traceback (most recent call last):
File “/home/ubuntu/website/zanhu/zanhu/news/test/test_views.py”, line 87, in test_post_comments
assert response.status_code == 200
AssertionError

Destroying test database for alias ‘default’…
Process finished with exit code 1

图片描述
图片描述
图片描述

正在回答 回答被采纳积分+3

2回答

归来也无风雨也无晴 2021-08-18 16:23:22
def test_delete_view(self):
    init_total = News.objects.count()
    # response = self.other_client.post(reverse('news:delete_news', kwargs={'pk': self.second_news.pk}))
    response = self.client.post(reverse('news:delete_news', kwargs={'pk': self.second_news.pk}))
    assert response.status_code == 302
    self.assertEqual(News.objects.count(), init_total - 1)
    
    问题:
    self.client是用first_user登录的,用这个client删除第一条动态肯定是不行的,用self.other_client就成功了
1 回复 有任何疑惑可以回复我~
  • Jack #1
    谢谢!
    回复 有任何疑惑可以回复我~ 2021-08-19 09:41:12
Jack 2020-11-13 11:16:05

您好,报Traceback 错误的话,不是测试结果失败,而是测试用例本身写的有问题报错了,能否截图一下你测试用例的完整代码呢?当然还有一种可能,你测试用例写得和视频里一样,但是被测试的功能写错了

0 回复 有任何疑惑可以回复我~
  • 提问者 ian116 #1
    添加了截图,麻烦老师帮忙看下。
    情况是,我依次执行每条用例都跑的通,运行整个测试套时全错
    回复 有任何疑惑可以回复我~ 2020-11-14 16:10:18
  • Jack 回复 提问者 ian116 #2
    代码看了几遍没发现问题,单独运行test_get_thread函数没有报错吗
    回复 有任何疑惑可以回复我~ 2020-11-16 15:12:17
  • 提问者 ian116 回复 Jack #3
    单独运行任意函数都没有报错。算了 不纠结了 往下学习了
    回复 有任何疑惑可以回复我~ 2020-11-17 21:26:51
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信