app.configs и MSTest Project - пустая ссылка на строку подключения - PullRequest
7 голосов
/ 31 мая 2009

Когда я пытаюсь запустить модульные тесты (mstest), я сталкиваюсь с этой проблемой.
Строка кода:

_mainCnStr = System.Configuration.ConfigurationManager.
               ConnectionStrings["main"].ConnectionString;

Возвращается как нулевая ссылка

Он не делает этого в основном проекте пользовательского интерфейса, когда я его запускаю. Как правильно выбрать этот параметр строки подключения в проекте модульного тестирования? Я попробовал встраивать как ресурс. Я пробовал Копировать Всегда. Какая правильная комбинация настроек поможет мне это исправить?

Ответы [ 3 ]

9 голосов
/ 31 мая 2009

Одна вещь, которую нужно посмотреть с помощью MSTest (по крайней мере, из IDE); он не запускает тесты в обычной выходной (bin) папке и не учитывает файловые включения проекта («Копировать в выходной каталог»). Вам часто нужно явно указать (MSTest), какие файлы поместить в тестовую область. Вам нужно будет включить «app.config» в этот список; либо с помощью testrunconfig («Развертывание»), либо путем добавления атрибута ([DeploymentItem]) в соответствующие тестовые устройства.

8 голосов
/ 31 мая 2009

Вы должны добавить app.config к проекту модульного тестирования. Он не будет автоматически использовать настройки в пользовательском интерфейсе приложения app.config.

0 голосов
/ 31 мая 2009

Я предполагаю, что mstests, как nunit-тесты, встроена в отдельную сборку, которая загружается тестовым приложением? В этом случае вам может понадобиться создать код настройки теста, который загружается в файл конфигурации.

...