SQL Server架构通过NUnit进行比较并使用scmp文件

时间:2015-07-09 05:32:51

标签: sql-server msbuild nunit

我想要实现的是运行单元测试(通过NUnit)来比较两个数据库的模式。如果数据库的模式相同,则测试通过,如果不是,则测试失败。

所以看来我可以向MsBuild发出这样做:

http://blogs.msdn.com/b/ssdt/archive/2014/07/15/msbuild-support-for-schema-compare-is-available.aspx

或解析dacpac文件:

Can I automatically generate a change script using a .scmp file?

但是我希望有一些比上述方法更简单的方法来实现这个目标吗?目前我没有访问CI来实现这一目标,所以现在它是基于单元测试的。

1 个答案:

答案 0 :(得分:1)

前段时间我有类似的需求,但实际上我需要的东西不仅要比较两种模式,还要自动执行所有更改以使它们相等。我找不到满足我需求的东西,所以我写了this tool。我几个月来一直在生产和开发环境中使用它。

我相信你可以使用parilis做你想做的事情:

var database1 = new DatabaseDescription(connectionInfo1);
var database2 = new DatabaseDescription(connectionInfo2);

var parilis = new Parilis(database1, database2);
Assert.IsTrue(parilis.AreAlreadyEqual();)