1
执行Django的信号,我创造一些Django的试验和测试的人需要尽快发布数据特定URL作为新的模式被创建或更新,我使用djnago信号,派遣他们在我的models.py文件中。Django的单元测试不是从原来的模式
现在,当我创建新的对象或壳修改现有的对象,我得到这个职位的要求与规定的数据,因此工作完全没问题的目标URL。
然而,当我写的语句来创建或更新在Django测试的模型,可以什么都不做,它只是在创建别名数据库对象,但实际上并没有发出任何信号,目标URL
这里我的Django的测试看看怎么样:
class ProductEndpointTests(APITestCase):
def test_product_create(self):
productobject = Product.objects.create(title="pr1",
description="good deal",
price=19.99)
productobject.save()
Models.py:
class Product(models.Model):
title = models.CharField(max_length=120)
description = models.TextField(blank=True, null=True)
price = models.DecimalField(decimal_places=2, max_digits=20)
def product_post_save(sender, instance, created, *args, **kwargs):
product = instance
# Post data to given url
post_save.connect(product_post_save, sender=Product)
这有什么,我很想念还是我需要在Django添加任何东西测试是为了从测试中发出信号?
任何帮助,将不胜感激。
感谢
没关系,这是一个错字,我们对此深感抱歉,我已经编辑后 – Nik391
现在发生了什么?你的断言相关代码在哪里? – masnun
所以,当我创建的测试模型对象它不是调度出于某种原因的信号,断言代码尚未实现,因为我还没有得到任何POST请求对象之后的目标URL被创建的,只要它可以做发布请求我可以实现一些断言来验证 – Nik391