2015-05-04 3 views
2

Я использовал Moq в своих модульных тестах в Visual Studio 2013. Мне нужно запустить тестовые примеры в командной строке с помощью «vstest.console.exe».Использование vstest.consol.exe для выполнения модульных тестов Moq

При попытке сделать это, я получаю эту ошибку:

Error: An exception occurred while invoking executor 'executor://mstestadapter/v1': Could not load file or assembly 'Codex.Repository, verion=1.0.0.0, Clture-neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.

Это команда, которую я использовать для запуска тестов:

vstest.console.exe "C:.../Codex.repository.unittests.dll" /UseVsixVersion /Framework:framework45 

При попытке выполнить тестовые случаи individualy с помощью «/ тесты:»тег, я получил более подробное сообщение об ошибке:

Could not load file or assembly 'Moq, Version=4.2.1502.911, Culture-neutral, PublicKeyToken=69f4...' or one of its dependencies. The system cannot fild the file specified.WRN: Assembly binding logging is turned OFF. To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: there is some performance penalty associated with assembly bind failure logging. To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

Так что теперь я знаю, что причина использования Moq в моей тэ первых случаев.

Как я могу решить эту проблему?

ответ

1

Первоначально я использовал тестовый файл DLL блока в папку OBJ:

c:\>vstest.console.exe "..\obj\release\unittests.dll" 

Visual Studio помещает все зависимые DLL-файлы в папке бин так я изменил:

c:\>vstest.console.exe "..\bin\release\unittests.dll" 

проблемы решена!

+0

Если у вас также есть Visual Studio на том же узле, вы можете запустить долгое тестирование, а затем попытаться использовать проводник процессов, чтобы узнать, из какой папки загружается тестовая dll. Затем используйте Vstest.console.exe для загрузки тестов из этой DLL. У вас больше не будет такой же ошибки. –

1

Вам необходимо убедиться, что для этих зависимостей установлено значение «Копировать локальное = истинное» таким образом, что vstest.console сможет найти их рядом с вашей тестовой сборкой.

Смежные вопросы