【发布时间】:2011-05-06 02:17:15
【问题描述】:
我们支持 MS SQL Server 2008(可能是 2005)、Oracle 以及 Sybase。 有一个使用 AWHILE 的大型脚本,它将构建表、存储过程、视图、触发器等,并使用我们认为合理的数据填充表。
现在我们正在尝试向系统引入单元测试,主要是为了测试存储过程以及它们之间的交互。所以,我不认为运行语句和存储过程特别具有挑战性。
困难的部分是在测试运行之前和之后保持数据库的正确状态,即使发生任何异常。是的,我可以将using 语句与“IDisposable”一起使用。对我来说更难的部分是(至少基于我对编程的了解和不了解):我如何安全地反复数千次地恢复 MS SQL、Oracle 和 Syabse 数据库的状态?我不应该假设任何时候只有一个用户在使用它,尽管我愿意考虑。我希望所有 3 个数据库都为此提供机制,我只需要使用正确的驱动程序来触发它们(我们已经测试了 ODBC - 它似乎对我们有用)。
如果有问题,请留下您的建议和问题。
【问题讨论】:
标签: .net sql-server oracle unit-testing sybase