1. 程式人生 > >django 單元測試錯誤總結

django 單元測試錯誤總結

數據 cts .com 官網 .py ica 無法 cas 用戶表

TestCase

django自帶有一個TestCase模塊來進行測試,我們可以參考官網 來寫單元測試的代碼。我這裏主要是總結一些錯誤。

用戶無法登陸

我們有些api登錄後才可以進行測試,所以我們可以在setUp 方法裏面先登錄用戶後再進行操作,那今天我遇到的問題就是,登陸不上,authenticate返回的是None,明明有正確的用戶名密碼的呀。後來我定睛一看,發現執行 python manage.py test gray_switch後,第一行出現這 Creating test database for alias ‘default‘... ,說明是臨時創建了一個數據庫以及相關的表結構,那麽對應的用戶表應該是空表,沒有數據所以 登錄失敗了。所以我們在登錄之前,先創建用戶。

from django.test import TestCase
from django.test import Client
from django.contrib.auth.models import User

# Create your tests here.
# 測試單元

class policy_operation_test(TestCase):

    def setUp(self):
        print("begin to test the policy operation‘s api ")
        User.objects.create_user(‘test‘,"[email protected]",‘xxx‘)   #創建用戶,大膽的創建吧,反正是測試數據是保存在臨時庫裏的。

        self.c = Client()
        response = self.c.login(username="test",password="xxx")
        print("login status:",response)  

這回可以登錄成功了。

django 單元測試錯誤總結