我们支持MS SQL Server 2008(2005也许),Oracle以及Sybase。 有一个大型脚本,它采用AWHILE,它将构建表,存储过程,视图,触发器等,并使用我们认为合理的数据填充表。使用MSTest测试存储过程(.Net)
现在我们试图将单元测试引入到系统中,主要测试存储过程以及它们之间的交互。所以,我不希望运行语句和存储过程特别具有挑战性。
困难的部分是在测试运行之前和之后维护数据库的正确状态,即使发生任何异常。是的,我可以利用using
声明和“IDisposable”。对我来说更难的部分是(至少根据我所做的以及对编程的了解):我如何安全地一遍又一遍地恢复MS SQL,Oracle和Syabse数据库的状态?尽管我愿意考虑这一点,但我不应该假设只有一个用户在任何时候都在使用它。我希望所有3个数据库都为此提供机制,我只需要使用正确的驱动程序触发它们(我们已经测试过ODBC了 - 它似乎对我们有用)。
请留下您的建议以及问题,如果您有它们。