Я пытаюсь увидеть, если я могу реализовать рекомендации, перечисленные здесь:тестов проекта не находя тестирование проекта DLL
http://www.ndepend.com/Res/NDependWhiteBook_Assembly.pdf
- У меня есть мой основной проект создан как приложение командной строки.
- У меня есть мой тестовый проект, ссылающийся на мой cmdlnApp с copylocal = false.
- У меня есть основная настройка проекта для вывода .. \ сборки \ отладки (при отладке)
- У меня есть настройка тестового проекта для вывода .. \ построить \ тестов \
У меня есть app.config в моем тестовом проекте со следующими параметрами:
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="debug;debug\lib;tests;" />
<dependentAssembly>
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.9.0" newVersion="2.6.9.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.9.0" newVersion="2.6.9.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="3.1.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="nunit.framework" publicKeyToken="96d09a1eb7f44a77" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-2.6.4.14350" newVersion="2.6.4.14350" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
</startup>
</configuration>
Когда я пытаюсь запустить мои модульных тестов я получаю сообщение об ошибке: System.IO.FileNotFoundException: не удалось загрузить файл или сборку «CmdLnApp, Version = 1.0.0.0, Culture = нейтральный, PublicKeyToken = null или одна из его зависимостей ,
Я проверил и создается папка сборки, в папке отладки есть все файлы из CmdLnApp, а в папке сложения также есть папка с тестами, в которой находятся все библиотеки тестирования.
Может ли кто-нибудь увидеть то, что мне не хватает?
Проводится ли в вашем модульном тестировании использование CmdLnApp? Он не может найти исполняемый файл вашей основной консоли, где он его ищет, но вы ничего не сказали о том, что вы действительно видите его в выходной папке. – zmechanic
Исполняемый файл CmdLnApp отображается в папке отладки, и тесты имеют тесты, в которых используется исполняемый файл. – Bitfiddler
Мое понимание директивы «probing» в сборке было связано с тем, что он должен инструктировать CLR для поиска каталогов, перечисленных в «privatePath», для поиска зависимостей. Поскольку папка отладки является дочерним элементом тестовой папки, мне показалось, что должен быть найден исполняемый файл CmdLnApp. – Bitfiddler