【发布时间】:2016-09-06 21:58:39
【问题描述】:
我正在运行集成测试。在开始测试之前,我删除了数据库并重新创建它。第一次测试成功。但是在第二次测试开始时,我得到了一个异常:
SetUp : System.Data.SqlClient.SqlException : 无法删除数据库“Test”,因为它当前正在使用中。
Сode:
[TestFixture]
class Class1
{
public SqlConnection Repository;
[SetUp]
public void LocInit()
{
Repository = new SqlConnection(@"Data Source=.\SQLEXPRESS; Integrated Security=true;");
Repository.Open();
Repository.Execute("USE master;");
Repository.Execute("DROP DATABASE Test;");
Repository.Execute("USE master; CREATE DATABASE Test;");
Repository.Execute("USE Test;");
}
[Test]
public void Test1()
{
using (var repository = new SqlConnection(@"Data Source=.\SQLEXPRESS; Integrated Security=true;"))
repository.Execute("USE Test; SELECT 10");
}
[Test]
public void Test2()
{
using (var repository = new SqlConnection(@"Data Source=.\SQLEXPRESS; Integrated Security=true;"))
repository.Execute("USE Test; SELECT 10");
}
[TearDown]
public void LocalTearDown()
{
Repository.Dispose();
}
}
为什么会出现这个异常?
【问题讨论】:
-
这是跨多个灯具吗?
-
看到这里的“大师”把我吓坏了。
标签: c# nunit integration-testing