Недавно я столкнулся с той же проблемой с TFS 2015 (в помещениях с обновлением 2). У нас есть несколько тестовых проектов, которые получают доступ к строке соединения из файла app.config, однако одному конкретному проекту не удалось получить доступ к строке подключения, которая привела к сбою нашей сборки.
Я изменил .csproj файл в соответствии с другом Дрессировка проектов, но это не обеспечивает никакого успеха, а не следующие работал для меня:
- скопировал содержимое App.config в блокнот
- Удаляется файл App.config из проекта
- Добавлена новая настройка файла приложения (App.config) к проекту
- вставлено содержимое из блокнота в новый файл App.confg
- правой кнопкой мыши файл App.config и изменил его свойства:
- Сложение Действие: Содержание
- Копировать в выходной каталог: Копировать всегда
При регистрации заезда во всех модульных тестов в пределах проект успешно прошел.
Это странное решение, но оно было проведено нашими испытаниями.
Примечание: удаление файла App.config является необходимым шагом. Изменение свойств файла (до удаления файла) не помогло.
Update:
После применения вышеуказанного раствора я заметил, все модульные тесты были запущены два раза, и после некоторого исследования я обнаружил, что весь вопрос был до нашей конфигурации сборки: -
На нашей задачи Visual Studio Build мы используем следующий параметр в наших MS Build Arguments:
/p:OutDir=$(Build.StagingDirectory)
Нашей Визуальная задача Studio Test была настроена искать тестовую сборку в следующем месте:
**\$(BuildConfiguration)\*test*.dll;-:**\obj\**
Изменяя расположение тестовой сборки на следующих фиксированных всем:
$(Build.StagingDirectory)\*test*.dll;-:**\_PublishedWebsites\**
Больше никаких проблем с файлами App.config и модульными тестами не было выполнено только один раз.
Можете ли вы показать свой код, где вы пытаетесь получить строку подключения? –
@ P.Jairai: это код в вопросе. – Pompair