Я хочу использовать статическую переменную в качестве параметра DeploymentItem
в модульном тесте MSTest, но, похоже, я не могу это сделать. Существует XSL-файл, который необходимо скопировать вместе с DLL-файлом при запуске модульного теста, и я определил местоположение как
private static string _xslPath = Path.Combine("MyProjectDir", "transform.xsl");
Однако, когда я тогда делаю следующее:
[TestMethod]
[DeploymentItem(DLL)]
[DeploymentItem(_xslPath)]
public void XmlToResultsTest() { }
Я получаю эту ошибку сборки:
Аргументом атрибута должно быть константное выражение, выражение typeof или выражение создания массива типа параметра атрибута
Ладно, ладно, хорошо, но мне кажется, что самому собирать путь просто грязно:
[DeploymentItem(@"MyProjectDir\transform.xsl")]
Я слишком разборчив в том, что хочу использовать Path.Combine
? Есть ли другая альтернатива, которую я пропускаю? Я полагаю, я мог бы просто поместить XSL-файл в корневой каталог решений, чтобы мне не приходилось передавать каталог проекта как часть пути.