Вы можете точно указать, какие файлы копируются в тестовый каталог, используя файл настроек теста . Вы можете создать несколько файлов настроек теста в Visual Studio, поэтому у вас может быть один для запуска из VS, другой для запуска из MSTest, другой для сборок CI сервера и так далее. Для получения дополнительной информации см. Здесь: Создание настроек теста для запуска автоматических тестов из Visual Studio
Используйте параметр /testsettings:<filename>
, чтобы указать его в командной строке.
Поначалу кажется, что смущает людей то, что по умолчанию «текущий каталог» MSTest - это не каталог запуска MSTest, а папка Out результатов теста.
Как упоминалось ранее, MSTest неправильно выводит все используемые сборки, если у вас нет прямой ссылки, он не будет копировать сборку. Тем не менее, Visual Studio имеет аналогичное поведение и в своей сборке, поэтому многие люди работают над этим, добавляя поддельные ссылки на код - ужасное решение - я не рекомендую его.
Однако собственные библиотеки DLL еще более проблематичны, и я обнаружил, что явное копирование их в конфигурации теста (настройках теста) работает для них так же, как и для управляемых сборок.