В моем текущем решении .Net 4.0 у меня есть один проект, содержащий множество XML-файлов в качестве встроенных ресурсов. В этих файлах ведется активная деятельность по разработке, и есть очень реальный шанс, что один из разработчиков в моей команде забудет установить действие сборки конкретного файла XML для встроенного ресурса.
Что я сделал для того, чтобы этого не произошло, и что прекрасно работает для локальных сборок в VS2010, так это для создания автоматического теста в NUnit, который подсчитывает количество ресурсов с помощью Assembly.GetManifestResourceNames()
, а затем сравнивает это с файлом посчитайте в правильном поддереве исходного каталога моей сборки ресурсов. Если они совпадают, это означает, что для всех файлов действие сборки правильно установлено на «встроенный ресурс».
Теперь моя проблема в том, что мой тест использует относительный путь для поиска каталога файлов в проекте ресурса, и рабочий каталог не совпадает на сервере сборки (который использует TFS2010).
Каков наилучший способ решить эту проблему? Я думал об использовании переменных среды, которые могут быть установлены по-разному на машинах разработчика и на сервере сборки, но в идеале я хотел бы что-то, что потребовало бы минимального количества конфигурации на машинах разработчика и сервере сборки.