我是新來django測試,並有一些問題,使用它們來測試模型之間的關係。Django模型關係測試
這裏是我的模型的摘錄:
class Member(models.Model):
user = models.OneToOneField('auth.User')
points = models.IntegerField()
def __unicode__(self):
return self.points
def get_number_of_poll(self):
nbr_of_poll = Poll.objects.filter(user=self.user).count()
return nbr_of_poll
class Poll(models.Model):
question = models.CharField(max_length=200)
user = models.ForeignKey(User)
def __unicode__(self):
return self.question
這裏是測試:
from polls.models import Member, Poll
from django.contrib.auth.models import User
from django.test import TestCase
class MemberTestCase(TestCase):
def setUp(self):
user = User(username='user')
self.member = Member(user=user, points=5000)
poll = Poll(question='poll', user=user)
def test_get_number_of_poll(self):
self.assertEqual(self.member.get_number_of_poll(), 1)
的問題是與test_get_number_of_poll()
方法總是返回0代碼工作的預期網站。 我在測試中做錯了什麼?我不知道我應該如何在測試課程中設定投票。
這很有道理。一旦測試完成,我是否應該使用'tearDown()'方法來移除它們,或者它會自動完成? – romainberger