2015-10-20 2 views
1

J'essaie les appareils de test Django à partir de la documentation officielle, mais ma classe de test ne trouve pas assertContains. AssertContains est une fonction spécifique de Django, pas spécifique à Python.Django AttributeError: l'objet n'a pas d'attribut 'assertContains'

from django.utils import unittest 
from django.test import Client 

class SimpleTest(unittest.TestCase): 
    def setUp(self): 
     self.client = Client() 

    def test_details(self): 
     response = self.client.post('/register', 
            {'username': '123', 
            'password': '123', 
            follow=True) 
     self.assertEqual(response.status_code, 200) 

     self.assertContains(response, "Logout") 
     self.assertNotContains(response, "Login") 

Répondre

3

Ainsi, assurez-vous que la classe de test est sous-classée de TestCase dans django.test, pas de TestCase dans (python) unittest.

à-dire

from django.test import TestCase 

    class SimpleTest(TestCase): 
     self.assertContains(response, "Logout")