Django:如何测试数据是否已加载到数据库中?

时间:2015-04-16 09:38:45

标签: django django-1.8

我正在运行一个Django 1.8站点,后面有一个大型数据库(它基本上是这个数据库上的GUI)。我有一些管理命令可以将完整的数据集加载到数据库中。

这是一个非常复杂的过程(因为数据集很大,设置涉及创建物化视图等)。所以一旦完成,我想测试数据是否已正确加载到数据库中。

例如,我可能会测试总共有正确的行数,并且各种示例查询都会给出我期望的结果。

我的Django项目中是否有预期的位置来执行此操作?

感觉与灯具填充的单元测试(它是真实的大型数据集)或功能测试有点不同,以检查前端是否给出了预期的结果。

非常感谢任何建议。现在我的想法是我应该创建另一个管理命令来运行这些测试查询。

2 个答案:

答案 0 :(得分:0)

为什么不在使用此测试数据填充数据库之后(在管理任务,脚本等结束时)检查它?您可以将其实现为单独的pytho脚本/函数,并在需要时调用。

答案 1 :(得分:0)

这样做的一种方法是在数据库的表中保存一个状态,你可以创建一个表来保存在数据库上运行的作业,每个作业都有一个状态,这种方式在你的命令中开始加载您可以在其中插入新行的数据,状态为started,最后您可以将状态更改为finished,在代码的其他位置,您可以检查是否存在{{ 1}}数据库上的作业然后数据尚未完成。

您需要注意的一点是,在加载数据时出现问题时,您需要将状态更改为started,并存储一些日志,然后您需要检查在以后。