我试图了解Django测试数据加载的最佳实践。我有一个简单的API,它有一些非常长的返回JSON数据列表,我想写一个行为测试来确保它正常工作。
Fixtures,或类似的东西,看起来像应该做的伎俩 - 但看起来像Django灯具用于播种数据库进行测试,而不是提供更一般的采样/序列化数据 - 例如我还没有能够找到一个允许我从一个特定夹具加载数据的API。
我普遍接受的方法是在磁盘上手动存储/版本化一个文件,该文件包含将加载的数据以及我的测试用例中的self.assertEqual&#39?
任何建议表示赞赏 - 谢谢!
答案 0 :(得分:2)
您应该查看factory_boy或django model mommy。与django支持的默认夹具加载相比,它们是加载夹具的首选方式。但如果你真的需要使用django默认夹具,
class SiteTests(TestCase):
#This is the fixture:
#- fields: {content: lots of stuff, query: test, title:
test, url: 'http://google.com'}
#model: mine.site
#pk: 1
fixtures = ['mine']
其中mine
是灯具文件的名称。看看http://django-testing-docs.readthedocs.org/en/latest/fixtures.html如何完成。