【发布时间】:2012-01-10 05:16:58
【问题描述】:
有谁知道在编写后测试迁移本身的方法吗?很多次在我的 DataMigrations 中,我发现了一些愚蠢的细微错误,例如 True 而不是 False 的默认值、错误的非规范化等。
默认的 South 约定是使用数字开始迁移,因此如果不使用 __import__,您甚至无法导入它们。有没有人遇到过类似的问题?人们如何解决它们?
最明显的方法是将迁移逻辑保存在单独的导入模块中并对其进行测试,但这有点笨拙。
【问题讨论】:
-
为什么不简单地编写单元测试来测试新模式呢?例如,在不指定值的情况下创建模型,并检查是否使用了正确的默认值。
-
@Michael:模式迁移没问题,但它不会在数据迁移中发现错误。
-
在这种情况下,您可以创建一个用于迁移测试的数据库、填充示例数据、运行迁移并测试最终值。
标签: django django-south