好的,它们不是单元测试,而是端到端测试。设置有些复杂。单元测试将使用 C#、ODBC 连接。每个单元测试都会尝试自行清理,但每 20 次左右的测试(每个 C# 类一次)我们需要进行一次完整的数据库恢复。根据此文档,我认为我不能通过 ODBC 连接来完成此操作:
Msg 6104, Level 16, State 1, Line 1 不能使用 KILL 杀死你自己的进程。
但是,我想这样做,这样 199 次测试就不会因为清理不当而失控。还有其他方法吗?也许我可以打开一个不同的“连接”,例如使用 COM 自动化或类似的东西,然后从那里终止所有数据库连接?如果是这样,我该怎么做?
此外,客户端是否能够在还原后自动重新连接,或者我是否必须每 20 次左右的测试就拆除所有东西?
如果您觉得这个问题令人困惑,请告诉我您的问题。谢谢!