如何在 Visual Studio 中执行单元测试之前执行 SQL 脚本以准备数据库

Ign*_*cia 5 sql unit-testing visual-studio-2008 visual-studio

我有很多单元测试依赖于数据库的特定配置。我想每次运行单元测试时都执行一个脚本,这样数据库就可以了,并且测试不会因为数据库中的数据错误而失败。我目前有一个 SQL 脚本可以将正确的数据放在数据库中。

有没有办法从 Visual Studio 做到这一点(2008 会很棒)?

在此先感谢朋友。

Ste*_*ger 2

您可以实现带有 和 等属性的方法[ClassInitialize][AssemblyInitialize]这些方法在类或程序集中的第一个测试之前执行一次。在这种方法中,您运行脚本。

您还可以编写一个在每个测试 () 中调用的方法[TestInitialize],该方法知道它是否已被执行。这样,您可以在每个需要它的测试之前运行该脚本,但当您仅运行不需要它的测试时则不运行该脚本。