2009-09-15 2 views
6

Мне нужно прочитать настройки из раздела appsettings (определенного в app.config) в модульном тесте. Мы используем mstest в этом проекте.app.config для сборки единичных тестов: как создать атрибут файла appsettings?

Скажи это app.config:

<configuration> 
<appSettings> 
    <add key="MyAppSetting" value="MyAppSettingValue"/> 
</appSettings> 
</configuration> 

Вот соответствующий тест, который проходит в этой установке:

[TestClass] 
public class ConfigurationTests 
{ 
    [TestMethod] 
    public void can_read_appsettings() 
    { 
     string value = ConfigurationManager.AppSettings.Get("MyAppSetting"); 
     Assert.AreEqual("MyAppSettingValue", value); 
    } 
} 

Теперь, когда я пытаюсь переместить раздел AppSettings в обычае. config, этот тест не выполняется.

Это то, что мой файл app.config выглядит сейчас:

<configuration> 
<appSettings file='Custom.config' /> 
</configuration> 

Я добавил файл Custom.config в мой проект (с построения действия 'копирования всегда'):

<appSettings> 
    <add key="MyAppSetting" value="MyAppSettingValue"/> 
</appSettings> 

При выполнении этого в консольном приложении это работает. Есть ли способ сделать эту работу в модульной тестовой сборке?

ответ

8

Я нашел ответ. Используя mstest, мне нужно было пометить файл Custom.config как элемент развертывания в файле localtestrun.testrunconfig.

+0

Yay! Мне нравится настраивать вещи, чтобы добраться до моей конфигурации! –

Смежные вопросы