Почему я не могу подключиться к базе данных SQL Server 2005 из жгута проводов MSTest в Visual Studio 2010? - PullRequest
0 голосов
/ 07 марта 2012

Вот проблема, с которой я сталкиваюсь.Несколько интересных трюков ...

Тесты встроены в MSTest изначально в Visual Studio 2008 .NET Framework 2.0 - я могу отлаживать тесты, чтобы пройтись по углам кода, которые трудно подойти или заправитьс данными.

С тех пор мы обновили наши системы до Visual Studio 2010 - (что, впрочем, принудительно переводит целевую платформу в .NET 4, когда проект содержит только тесты (хмммм))

Однако, когда яПри попытке отладки модульного теста с VS2010, жгут не может подключиться к нашей тестовой базе данных для любого вида кода init или команд SQL, чтобы перевести базу данных в известное тестируемое состояние (даже простая команда jane SQL + соединение не может соединиться сo использование любой абстракции (например, блоки приложений, диспетчер конфигурации или методы подключения к корпоративной библиотеке).У меня появляется следующая ошибка ...

Клиент не смог установить соединение из-за ошибки во время процесса инициализации соединения перед входом в систему.

Возможные причины включают следующее:
клиент пытался подключиться к неподдерживаемой версии SQL Server;
сервер был слишком занят, чтобы принимать новые подключения;или на сервере было ограничение ресурсов (недостаточно памяти или максимально допустимых соединений).
(поставщик: поставщик именованных каналов, ошибка: 0 - на другом конце канала нет процесса).

Я понимаю, что наиболее распространенным ответом было бы убедиться, что Named Pipes и протоколы tcpip включены на удаленном экземпляре БД.Однако старший разработчик в моей команде может успешно подключаться к БД при отладке модульного теста, поэтому я склоняюсь к проблеме локальной конфигурации / установки / драйвера.Кроме того, я могу подключиться к локальному хосту без проблем.

Дополнительные странности - я могу перейти на панель инструментов, выбрать «Тест> Выполнить> Тесты в текущем контексте или Тесты в решении» и выполнить полную регрессию.тестовые прогоны - проблем с подключением БД не возникаетОднако при использовании комбинации клавиш «Ctrl + R + T» (которая является сокращенным отображением рядом с командой меню) - меня приветствует вышеприведенная ошибка подключения независимо от того, выполняется ли отладка с точкой останова.

Я понимаю,что тот факт, что я отлаживаю модульные тесты, является спорным, однако я нахожу, что он помогает мне в течение цикла разработки использовать подход в стиле TDD с возможностью углубиться в код в определенных условиях.

Снова средаэто VS2010, Windows 7, все дистрибутивы .NET установлены, SQL Server 2005 и 2008 R2 установлены.

Если изложенные мной факты и выводы даже вызывают у вас подозрения, пожалуйста, дайте мне знать - я благодарю васвсе для твоего времени !!

1 Ответ

1 голос
/ 14 марта 2012

Я нашел решение, но для этого потребовалась восстановительная установка Windows и сборка среды разработки.Однако я наконец-то вернулся к этому циклу.

...