У меня есть несколько классов тестов и методов, которые копируют определенный каталог, например:
[TestClass, DeploymentItem("LanguageData", "LanguageData")]
public class OcrTests
{
[TestMethod]
public void Can_Capture_Field()
{
// some code that expects the LanguageData directory to be in the test results Out directory
}
// etc
}
[TestClass]
public class OcrBuilderTests
{
[TestMethod, DeploymentItem("LanguageData", "LanguageData")]
public void Can_Build_Specific_Ocr_Engine_Implementation()
{
// some more code that expects the LanguageData directory to be in the test results Out directory
}
// etc
}
Эти тесты находятся в одной сборке, и все файлы в каталоге LangaugeData имеют набор Copy to Output Directory
до Copy Always
.
Все работает нормально, и каталог копируется в каталог результатов теста Out
, если в решение загружена только одна тестовая сборка или это единственная сборка, из которой я запускаю тесты (т.е. запускаю тесты).только в текущем контексте / классе).
Как только я добавляю вторую сборку и запускаю все тесты в решении, этот каталог больше не копируется, , но любые другие элементы DeploymentItems, которыепохоже, что отдельные файлы копируются нормально.
Все тесты все еще выполняются, но те, которые зависят от сбоя каталога.Предположительно, это потому, что MSTest не может найти каталог - возможно, он ожидает, что он будет находиться в каталоге сборки одной из других тестовых сборок?
Есть какие-либо идеи о том, что такое несколько тестовых проектов, препятствующих копированию, ичто я могу сделать, чтобы обойти это, кроме добавления каждого отдельного файла в этом каталоге в качестве отдельного DeploymentItem?