FitSharp не может найти файлы .DLL в других папках - PullRequest
1 голос
/ 12 апреля 2019

Я получаю исключение System.IO.FileNotFoundException при попытке протестировать мое приложение. Моя папка выглядит следующим образом:

  • У меня есть папка fitSharp с Runner.exe и DLL-файлами
  • Тестируемая система находится в моей папке отладки
  • У меня есть ссылка на этот .dll с: ! Path ........ \ Debug \ XXXXX.dll

Так что проблема в том, что я использую Dependecy Injection, fitSharp не может найти требуемый .dll для единства. Я получаю FileNotFound Exception все время.

Дело в том, что если я скопирую все файлы (.dll) в мою папку fitSharp, где находится Runner.exe, тест работает нормально.

Проблема в том, что fitsharp не может найти файлы в другой папке, и я не знаю, как указать этот путь для fitSharp.

Я уже пытался использовать файл configuration.xml для объявления всех необходимых DLL, но все еще нет.

__ EXCEPTION __:System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> XXXException: Verbindung fehlgeschlagen. DatabaseException (0x80004005): Failed to execute non query ---> System.Configuration.ConfigurationErrorsException: An error occurred creating the configuration section handler for unity: Could not load file or assembly 'Microsoft.Practices.Unity.Configuration' or one of its dependencies. Das System kann die angegebene Datei nicht finden. ---> System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Practices.Unity.Configuration' or one of its dependencies. Das System kann die angegebene Datei nicht finden. at System.Configuration.TypeUtil.GetTypeWithReflectionPermission(IInternalConfigHost host, String typeString, Boolean throwOnError) at System.Configuration.MgmtConfigurationRecord.CreateSectionFactory(FactoryRecord factoryRecord) at System.Configuration.BaseConfigurationRecord.FindAndEnsureFactoryRecord(String configKey, Boolean& isRootDeclaredHere) at fitSharp.Machine.Model.TypedValue.ThrowExceptionIfNotValid() at fitSharp.Slim.Operators.InvokeInstructionBase.InvokeMember(Tree1 parameters, Int32 memberIndex)
at fitSharp.Slim.Operators.ExecuteCall.ExecuteOperation(Tree1 parameters) at fitSharp.Slim.Operators.InvokeInstructionBase.Invoke(TypedValue instance, MemberName memberName, Tree`1 parameters)

1 Ответ

1 голос
/ 25 апреля 2019

Вы можете попробовать явно загрузить отсутствующую DLL:

!path pathToDll\Microsoft.Practices.Unity.Configuration.dll

или попробуйте эту запись в файле конфигурации пакета:

<suiteConfig>
    <System.AppDomainSetup>
        <ApplicationBase>pathToSUT</ApplicationBase>
        ...
...