FitNesse SliM Runner не может найти сборки библиотеки предприятия

Я использую бегун SliM для тестирования FitNesse нашего проекта.Net 4.0. Все шло гладко, пока мы не добавили регистратор Enterprise Library. Мы настраиваем контейнер Unity для логгера из конфигурации. Когда конфигурация загружена, тест не пройден, и он жалуется, что не может загрузить библиотеки EntLib. Даже при добавлении записей пути к классам пакета, включающих в себя Microsoft.Practices.EnterpriseLibrary.Logging.dll и Microsoft.Practices.EnterpriseLibrary.Common.dll, из которого строится проект, все равно происходит сбой. Тем не менее, он находит их, если они добавляются в тот же каталог, где существует Runner.exe.

Это было бы хорошо, вряд ли желательно, но достаточно, за исключением того, что регистратор использует пользовательский тип слушателя, который возвращается в тестируемый проект. Этот пользовательский тип, в свою очередь, опирается на наши собственные библиотеки и расширения. Fitnesse жалуется, что не может найти dll с пользовательским слушателем, а также своими зависимостями, если они не находятся в одном каталоге с Runner.exe. Однако, если я просто уберу зависимость от Enterprise Library, тестировщик найдет все сборки в каталоге сборки.

1 ответ

У меня были проблемы с некоторыми библиотеками, которые настаивали на поиске DLL в том же каталоге, где исполняемый файл приложения, в данном случае, runner.exe. Даже если библиотеки явно загружены, он все равно не распознает их. Я не пробовал комбинацию Unity и Enterprise Library, но это может быть похожая проблема.

Копирование runner.exe в каталог сборки и запуск оттуда может быть обходным путем.

Вы также можете попробовать настройки AppDomain: см. AppDomainSetup в http://fitsharp.github.com/FitSharp/SuiteConfigurationFile.html

Другие вопросы по тегам