Я использую временную базу данных для своих модульных тестов, которые создаются и удаляются с каждым тестом, но были очень осторожны, чтобы гарантировать, что они используют ту же настройку, что и моя «настоящая» база данных (enlist = false; множественные активныеresultsets = true; и т. Д.)но постоянно сталкивался с проблемами эскалации MSDTC, где бы ни использовался TransactionScope.
После переключения TransactionScope для транзакции я решил проблему эскалации MSDTC и сразу столкнулся с новой проблемой - транзакция работает отлично, когда я использую приложениев веб-браузере, но он не проходит модульное тестирование со следующей ошибкой:
SqlConnection не поддерживает параллельные транзакции.
Без отправки тонны кода есть кто-то ещестолкнуться с аналогичными проблемами, когда тестовая среда и среда разработки работают по-разному?Есть ли какая-либо общая причина, по которой параллельная транзакция будет работать в dev, а не в режиме модульного тестирования?
Если я не могу точно смоделировать то, что происходит с моими тестами, тогда какой смысл вообще тестировать?