У меня есть тест.При каждом первом выполнении test1 происходит сбой test2 с сообщением:
«System.Data.EntityException: System.Data.EntityException: базовый поставщик не удалось открыть. Не удается открыть базу данных» DBEntities"запрошено при входе в систему. Ошибка при входе в систему.".
и всякий раз, когда test2 выполняется первым, test1 завершается с тем же сообщением.
Я был в этом в прошлом3 дня.
[TestClass]
class MyTestClass
{
DBEntities db;
[TestInitialize]
public void Initializer()
{
db = new DBEntities();
}
[TestMethod]
public void test1()
{
db.Books.Add(new Book{ ...});
db.SaveChanges();
}
[TestMethod]
public void test2()
{
db.Books.Add(new Book{ ...});
db.SaveChanges();
}
[TestCleanup]
public void Clean()
{
db.Dispose();
}
}
Вот выдержка из класса DBEntities:
public class DBEntities : DbContext
{
public DbSet<Books> TheBooks{get;set;}
...
}
После запуска профилировщика я заметил это сообщение:
"Войтисбой для пользователя. Причина: не удалось открыть явно указанную базу данных. "
после множества операторов lockAcquired
и lockReleased
.