我目前正在为我的 django 项目编写测试,我需要确保
模型的特定字段属于某种类型。
例如,在模型图片中,我想确保有一个字段带有
名称为“image”并且类型为 ImageField。
我还希望能够检查属性是否属于ForeignKey 类型
模特图片。
我尝试使用assertIsInstance,但我需要分配属性,否则
他不是。
有人知道怎么做吗?
最佳答案
要回答您的问题,这样的检查应该有效:
from django.db.models import ImageField
from wherever.mymodels import Pictures
...
field = Pictures._meta.get_field("image")
assertTrue(isinstance(field, ImageField))
不过,对于我的 2 美分来说,对于您的单元测试来说,检查设置某些 Picture 实例的“图像”是否按预期工作可能更有意义,而不是仅仅检查名为“图像”的 ImageField。毕竟,您真正应该使用测试用例检查的是:“我用来上传/验证/保存图像的代码是否可靠地工作”?
关于python - Django 测试模型字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30575370/