Подтвердить что ты не робот

Как заставить MSTest найти файлы тестовых данных?

У меня есть несколько тестов, которые нужно загружать с помощью внешних данных из файлов excel. Файлы включены в тестовый проект, а в Visual Studio я редактировал файл настроек теста (Local.testsettings) для развертывания файлов данных. Это заставляет его работать отлично и VS.

Мы также поддерживаем непрерывную интеграцию с TeamCity, а в TeamCity это не работает. Мои файлы данных недоступны для теста. Кажется, что тесты запускаются из временной папки с именем "C:\TeamCity\buildAgent\temp\buildTmp\ciuser_AS40VS6 2009-12-11 09_40_17\Out", и файлы данных там не копируются.

Я попытался изменить действие сборки для файлов данных на "Ресурс" и установить копию для вывода dir в "Always", но это не помогло.

Кто-нибудь знает, как сделать эту работу?

Я запускаю бета-версию Visual Studio 2010 и TeamCity 4.5.5, поэтому я запускаю MSTest в первую очередь, а не NUnit...

4b9b3361

Ответ 1

Я обойду это, добавив файлы данных (в моем случае обычно XML) в качестве встроенных ресурсов, и я извлекаю их из тестовой сборки.

[TestInitialize]
public void InitializeTests()
{
    var asm = Assembly.GetExecutingAssembly();
    this.doc = new XmlDocument();
    this.doc.Load(asm.GetManifestResourceStream("TestAssembly.File.xml"));
}