NUnit 2.4.6 не может найти log4n 1.2.10 при запуске из NAnt 0.91-alpha2 - PullRequest
1 голос
/ 21 октября 2010

У меня есть веб-приложение .NET 3.5, и я добавляю Silverlight 4. Я могу собрать и протестировать весь проект в VS 2010. Мои сборки все еще нацелены на 3.5.Мне пришлось обновить NAnt с .85 до .91-alpha2, чтобы сборка работала вообще, и мне пришлось использовать вызов msbuild v4.0.30319 вместо задачи NAnt.Теперь все работает (хотя, если у кого-то есть предложения по улучшению, я открыт для них).

После сборки NAnt запускает юнит-тесты.Моя проблема состоит в том, что это немедленно терпит неудачу, потому что NUnit не может найти правильный log4n.dll.Вывод ниже (elipses добавлен, чтобы запутать некоторые имена папок).NAnt использует log4n 1.2.9, а NUnit использует 1.2.10.Каждое приложение имеет правильную версию в своем каталоге установки.NAnt загружает свою версию, которая используется при запуске NUnit, но я не понимаю, почему возникает конфликт.Я подозреваю, что проблема связана с NAnt .91-alpha2, и я не могу придумать обходного пути.

 [exec] Unhandled Exception:
 [exec] System.TypeInitializationException: The type initializer for 'NUnit.Core.RemoteTestRunner' threw an exception.
 ---> System.IO.FileNotFoundException: Could not load file or assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821' 
or one of its dependencies. The system cannot find the file specified.
 [exec] File name: 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821'
 [exec]    at NUnit.Core.RemoteTestRunner..cctor()
 [exec] 
 [exec] Assembly manager loaded from:  C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
 [exec] Running under executable  C:\Program Files\NUnit 2.4.6\bin\nunit-console.exe
 [exec] --- A detailed error log follows. 
 [exec] 
 [exec] === Pre-bind state information ===
 [exec] LOG: User = ...
 [exec] LOG: DisplayName = log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821
 [exec]  (Fully-specified)
 [exec] LOG: Appbase = file:///c:/AutomatedBuild/sourcecode/.../bin/Debug
 [exec] LOG: Initial PrivatePath = NULL
 [exec] Calling assembly : nunit.core, Version=2.4.6.0, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77.
 [exec] ===
 [exec] LOG: This bind starts in default load context.
 [exec] LOG: No application configuration file found.
 [exec] LOG: Using machine configuration file from C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
 [exec] LOG: Post-policy reference: log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=1b44e1d426115821
 [exec] LOG: Attempting download of new URL file:///c:/AutomatedBuild/sourcecode/.../bin/Debug/log4net.DLL.
 [exec] LOG: Attempting download of new URL file:///c:/AutomatedBuild/sourcecode/.../bin/Debug/log4net/log4net.DLL.
 [exec] LOG: Attempting download of new URL file:///c:/AutomatedBuild/sourcecode/.../bin/Debug/log4net.EXE.
 [exec] LOG: Attempting download of new URL file:///c:/AutomatedBuild/sourcecode/.../bin/Debug/log4net/log4net.EXE.
 [exec] 
 [exec]    --- End of inner exception stack trace ---

1 Ответ

0 голосов
/ 09 июня 2015

Согласно OP, ошибка была устранена путем обновления NUnit:

NUnit 2.4.6 был сломан чем-то, что я установил, потому что я получаю ошибку, когда я запускаю только графический интерфейс NUnit.Я не получаю сообщение об ошибке при установке новой версии (2.5.7).

...