在MSBuild項目中運行Nunit控制檯命令是爲了執行測試而構建的,該命令包含大約90個路徑,每個命令都是編譯的測試項目(.test.dll)的完整路徑,並且包含至少100個字符但不超過150Nunit有一個路徑長度限制?
當腳本運行我得到了以下錯誤:
NUnit version 2.5.10.11092
Copyright (C) 2002-2009 Charlie Poole.
Copyright (C) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov.
Copyright (C) 2000-2002 Philip Craig.
All Rights Reserved.
Runtime Environment -
OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1
CLR Version: 2.0.50727.5485 (Net 2.0)
ProcessModel: Default DomainUsage: Multiple
Execution Runtime: Default
Unhandled Exception:
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Builds\123\XXXX\XXX.Build.Sonar\srcDroplocation\Build\x86\Release\xxxxx.xxxx.CustomTypes.Test.dll'.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights
, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolea
n bFromProxy)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access)
at NUnit.Core.AssemblyReader.CalcHeaderOffsets()
at NUnit.Core.AssemblyReader..ctor(String assemblyPath)
at NUnit.Util.RuntimeFrameworkSelector.SelectRuntimeFramework(TestPackage package)
at NUnit.Util.DefaultTestRunnerFactory.GetTargetProcessModel(TestPackage package)
at NUnit.Util.DefaultTestRunnerFactory.MakeTestRunner(TestPackage package)
at NUnit.ConsoleRunner.ConsoleUi.Execute(ConsoleOptions options)
at NUnit.ConsoleRunner.Runner.Main(String[] args)
這個文件的原始路徑爲「C:\構建\ 123 \ XXXX \ XXX.Build.Sonar \ SRC \ Droplocation \建立\ 86 \發佈\ xxxxx.xxxx.CustomTypes.Test.dll」。該文件存在,我注意到,在例外src和Droplocation之間的路徑中缺少一個反斜槓。
這個問題發生在我的生成服務器上,在我的本地機器上工作,不同的是在我的本地機器上這個文件夾並沒有那麼深:'C:\ T \ XXX \ Droplocation \ Build \ x86 \ Release \ xxxxx .xxxx.CustomTypes.Test.dll'
對使用NUnit的路徑有任何限制嗎?
我也嘗試才能把它的所有引用創建一個.nunit文件,但它會導致另一個問題
更新:我更改配置爲調試,和東西š同樣的事情發生了,但是路徑不同,現在,例外中缺失的字符不是反斜槓,而是一個字母。它無法找到該文件。是的,我檢查了將它發送給命令的原始路徑,它是正確的。 – XtianGIS
路徑上有多少個字符是丟失的字符?我很好奇每次同一地點是否被丟棄。在構建腳本中是否有任何字符串替換命令? – Pedro
對於調試的情況是87個字符,當設置爲釋放時是40個字符。 但是,如果我從NUnit控制檯的參數開頭算起已刪除字符的位置,它們都出現在第8005位置 – XtianGIS