Отключение временного каталога MSTest в TeamCity - PullRequest
5 голосов
/ 29 ноября 2011

Я использую TeamCity Professional для непрерывной сборки и тестирования своего кода.

У меня есть несколько тестов на основе MSTest, которые отлично работают в VS2010 на моем ПК, но не работают на сервере сборки.

Я обыскал и обнаружил, что при тестировании TeamCity создает временный каталог в TEMP_DIR (настраивается) и копирует только зависимости «первого отношения» в тестовую DLL.

Например,: мой тест использует NHibernate.dll, который копируется во временный каталог, но его зависимости (то есть NHibernate.ByteCode.Castle) не копируются, и тест завершается неудачей с исключением IO.FileNotFound.

Есть ли способЯ могу просто запустить тесты из выходного каталога тестовых проектов (Test / bin / debug)?

Если нет, как я могу указать, какие библиотеки DLL следует скопировать во временный каталог?

1 Ответ

13 голосов
/ 02 декабря 2011

Вы можете добавить в свое решение файл TestSettings , в котором будут описаны все файлы для развертывания.

Сначала добавьте файл TestSettings . Откройте его и на вкладке « Deployment » добавьте все необходимые файлы (ваш .dll). Затем в TeamCity на этапе сборки MSTest укажите файл TestSettings для использования в области « Дополнительные параметры команды ». Пример: "/ testsettings: Local.Testsettings"

Таким образом, все файлы, указанные в элементах развертывания, будут скопированы во временный каталог.

...