Les modèles en cours de test sontDjango: test optimize qui viole SECS
class A(models.Model):
""" model A"""
name = models.CharField(max_length=50, unique=True)
slug = AutoSlugField(max_length=265, unique=True, populate_from='name')
link = models.URLField(blank=True)
class Meta:
verbose_name = 'Model A'
def __unicode__(self):
return self.name
class B(models.Model):
""" model B"""
name = models.CharField(max_length=50, unique=True)
slug = AutoSlugField(max_length=265, unique=True, populate_from='name')
link = models.URLField(blank=True)
class Meta:
verbose_name = 'Model B'
def __unicode__(self):
return self.name
Les tests simples pour les modèles donnés,
class TestA(TestCase):
""" Test the A model """
def setUp(self):
self.name = 'A'
self.slug = 'a'
self.object = A.objects.create(name=self.name)
def test_autoslug_generaton(self):
""" test automatically generated slug """
assert self.object.slug == self.slug
def test_return_correct_name(self):
""" test the __unicode__() method """
assert self.object.__unicode__() == self.name
class TestB(TestCase):
""" Test the A model """
def setUp(self):
self.name = 'B'
self.slug = 'b'
self.object = B.objects.create(name=self.name)
def test_autoslug_generaton(self):
""" test automatically generated slug """
assert self.object.slug == self.slug
def test_return_correct_name(self):
""" test the __unicode__() method """
assert self.object.__unicode__() == self.name
Ici, les essais viole DRY que les tests ne sont que de dupliquer des modèles modifiés . comment refactoriser les tests car cela ne viole pas DRY?
SEC - DR Ontario EPEAT Y nous-même, une philosophie de développement logiciel qui vise à réduire la répétition de la redondance et le code.
Merci.
Dupliquer de http: // stackoverflow.com/questions/4566910/abstract-test-case-using-python-unittest – rnevius