av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python - Django 測試url老是返回404,用瀏覽器瀏覽url就正常,這是怎么回事?

瀏覽:101日期:2022-06-30 16:58:56

問題描述

測試代碼如下:

from django.test import TestCase# Create your tests here.class SendviewsTestCase(TestCase): def test_get_data(self):rep = self.client.post(’/data/datamsg/’,{’data_name’:’測試數據’})print (rep.content)# 測試http請求的返回碼是否正確self.assertEqual(rep.status_code,200)

======================================================================FAIL: test_get_data (dataforpro.tests.SendviewsTestCase)----------------------------------------------------------------------Traceback (most recent call last): File '/home/yangtz/developproject/backend/dataforpro/tests.py', line 20, in test_get_data self.assertEqual(rep.status_code,200)AssertionError: 404 != 200----------------------------------------------------------------------Ran 1 test in 0.017sFAILED (failures=1)Destroying test database for alias ’default’...

但是在用瀏覽器瀏覽該url時,就能正常返回200,是不是哪里的設置不對?

問題解答

回答1:

看你的錯誤是404,說明訪問/data/datamsg/的時候沒找到url,要看你的url地址是怎么配的,試試/data/datamsg把后面的/去掉,又或才是你要加上http://localhost之類的

回答2:

你說你用瀏覽器可以瀏覽該 url你通過瀏覽器訪問 url,瀏覽器會發送 GET 請求但是你在測試里面用的是 POST 請求。

所以就算,瀏覽器里面正不正常和測試通不通過沒有任何聯系

回答3:

出現404,應該如1L所言,需要補全URL(host部分)。因為通過瀏覽器請求的時候,頁面里URL是 / 開頭,瀏覽器會自動加上host;而你在單元測試用例里,必須自己寫完整的URL。出現302,你得看看:302跳轉到了哪個URL?是你在哪里增加了什么限制/驗證條件?比如,增加了“login_required”,如果系統檢查沒有登錄,自動302跳轉到登錄頁?還有一種可能,應該是出現403才對,你偽造了POST請求,而django默認是有csrf校驗的。

標簽: Python 編程
主站蜘蛛池模板: 在线观看中文字幕dvd播放 | 91在线免费视频 | 欧美日韩三级在线观看 | 九九免费视频 | 欧美二三区 | 欧美精产国品一二三区 | 在线免费小视频 | 日日骚视频 | 一区日韩| 午夜影院在线观看免费 | 夜夜爽99久久国产综合精品女不卡 | 亚洲精品国产a久久久久久 午夜影院网站 | 国产在线第一页 | 九九热精品视频 | 久久伦理电影 | 日韩av在线免费 | 98成人网 | 国产高清久久久 | 欧美日韩三级 | 亚洲天堂一区二区 | 久久国产成人午夜av影院武则天 | 一级毛片在线播放 | 国产日韩精品一区二区 | 亚洲一区久久 | 欧美成人手机视频 | 成人在线观看免费观看 | 精品99爱视频在线观看 | 狠狠热视频 | 亚洲一区二区视频在线播放 | 国产我和子的乱视频网站 | 国产综合久久 | 亚洲欧美日韩精品久久亚洲区 | 一级特黄a大片 | 国产成人免费 | 一区二区播放 | 亚洲免费大片 | 欧美日韩一区二区三区四区 | 毛片1| 成人国产精品久久久 | 国产精品免费一区二区三区 | 亚洲欧洲精品在线 |