我正在使用Migrator.NET为应用程序编写数据库迁移。Marc-André Cournoyer 写道:
与应用程序中的任何代码一样,您 必须测试迁移。跌宕起伏的代码。将其作为持续构建过程的一部分,并在尽可能多的不同数据库和环境上进行测试。
我怎么做?假设我有创建表的 Up() 方法和删除同一个表的 Down() 方法,并且我正在使用 SQL Server。测试会是什么样子?我是否应该对系统表运行 SQL 查询,例如select * from sys.columns
检查表是否已创建以及它是否具有正确的结构?如果我们使用 NHibernate 会怎样?
编辑 我的意思是 Rails ActiveRecord 迁移意义上的迁移(基于 C# 代码以小步骤创建、修改和拆除数据库)。
编辑 2 这里是我读到我们应该测试迁移的地方。该博客文章实际上是从 Migrator 的 wiki 链接的。