Коли я намагаюся запускати модульні тести (mstest), я стикаюсь з цією проблемою.
Рядок коду:
_mainCnStr = System.Configuration.ConfigurationManager.
ConnectionStrings["main"].ConnectionString;
Повертається як нульове посилання
Це не робить цього в основному проекті інтерфейсу, коли язапустіть його. Який правильний спосіб отримати це налаштування рядка підключень, побачене проектом Unit Test? Я спробував вбудований як ресурс. Я спробував копіювати завжди. Яка правильна комбінація налаштувань, яка вирішить це для мене?
Відповіді:
9 для відповіді № 1Одне, що слід дивитися з MSTest (від IDE нанайменше); він не запускає тести в звичайній папці випуску (bin) і не поважає включення файлу проекту ("Копіювати до директорії виводу"). Вам часто потрібно явно сказати йому (MSTest), які файли ввести в тестову зону.Ви повинні включити "app.config" в цей список, або через testrunconfig ("Розгортання"), або додавши атрибут ([DeploymentItem]
) на випробувальні світильники, що постраждали.
8 для відповіді № 2
Ви повинні додати app.config
до одиничного випробувального проекту. Він автоматично не використовуватиме налаштування в додатку для інтерфейсу користувача app.config
.
0 для відповіді № 3
Я вважаю, що mstests, як і тести nunit,вбудований в окремий збірник, який завантажується програмою для тестування? У такому випадку вам може знадобитися створити тестовий набір коду, який завантажується у файл конфігурації.