Проект модульного теста не может найти тестируемую сборку (или зависимости)
когда я пытаюсь запустить мой проект модульного теста, я получаю следующую ошибку:
не удалось загрузить файл или сборку "ASSEMBLY_NAME, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" или одну из ее зависимостей.
система не может найти указанный файл.
тестируемая сборка находится в одном и том же решении, и каждый проект предназначен для .NET 4.0 framework. Некоторое время это работало, но сегодня я снова получил эту ошибку. Я не могу выясните, что не так, потому что сообщение об ошибке не говорит мне достаточно. (например, какой файл не удалось найти..)
Я попытался добавить новый тестовый проект, но и тот работал некоторое время, прежде чем он дал мне это же сообщение об ошибке.
Edit: в журнале построения диагностики появляется следующая ошибка:
C:Program FilesMSBuildMicrosoftVisualStudiov10.0TeamTest
Microsoft.TeamTest.targets(14,5):
error : Could not load file or assembly 'ASSEMBLY_NAME, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null' or one of its dependencies.
The system cannot find the file specified.
Done executing task "BuildShadowTask" -- FAILED. (TaskId:671)
Done building target "ResolveTestReferences" in
project "ASSEMBLY_NAME.Tests.vbproj" -- FAILED.: (TargetId:985)
8 ответов
после проверки некоторых дополнительных результатов поиска я наткнулся на этот вопрос здесь, в SA частный метод доступа для метода не найден .
после того, как я удалил *.файл доступа, мой тестовый проект перестал жаловаться и скомпилирован успешно.
Всем спасибо за помощь!
Регистрация . Все проекты должны иметь одинаковую платформу и столбец Build
проверено.
также вы можете взглянуть на компоновке (Output
window), он обычно более четко указывает, какой файл не может быть найден.
существует распространенная ошибка при выполнении модульных тестов: папка выполнения.
вы уверены, что ваш модульный тест выполняется в нужную папку ? Не в знаменитом obj?
на obj, копируются только сгенерированные сборки, не зависимости-даже скопируйте локальный true-. Поэтому, если ваш тест запускается из этой папки, все зависимости будут отсутствовать.
Я пробовал все выше безрезультатно. Наконец, в csproj я изменил
<Private>False</Private>
to
<Private>True</Private>
по ссылкам и всем пройденным тестам.
возможно, включение ведения журнала загрузки сборки может дать вам подсказку о том, почему ваша сборка не может быть загружена.
У меня была та же проблема и обнаружил, что копирование dll в GAC решило проблему. Хотя я все еще не понимаю, почему он не использует ссылочные сборки проектов.
другая возможная причина - если имя сборки проекта модульного теста использует то же имя, что и тестируемая сборка. (т. е. убедитесь, что имя сборки модульного теста уникально).
ссылки - >отметить DLL - >щелкните правой кнопкой мыши - > Свойства - >копировать локальный набор в true