5

Ho abilitato l'autenticazione di accesso per la mia app django. I test unitari per le viste non funzionano perché rimangono bloccati nella pagina di accesso. Impostare un punto di interruzione immediatamente dopo la risposta della vista viene restituito e utilizzandoCome si configura un utente di test di unità per l'applicazione django? Il test dell'unità non può accedere

stampa response.content

risultati in uscita che contiene la frase 'prego accedere'

Come si imposta un utente in modo il testcase può accedere? Ho provato a utilizzare il mio nome utente e la mia password, ma non funziona nel contesto del test dell'unità.

risposta

7

Il seguente codice introdotto all'inizio del TestCase crea un utente, li registra in, e consente al resto del test per contiue

docs
self.user = User.objects.create_user(username='testuser', password='12345') 
login = self.client.login(username='testuser', password='12345') 
+2

Django consigliare utilizzando '' 'create_user()' '' piuttosto che '' 'create()' ''. Questo ti permetterebbe di saltare il passo '' 'set_password'''. – rurp

+0

@rurp hai esattamente ragione. Ho cambiato la risposta per riflettere il tuo commento. Grazie per aver rimosso un'altra riga dal mio codice! – dolphus333