2015-09-25 49 views
2

我正在TFS 2015中使用NUnit和NUnit測試適配器NuGet包運行一些非常簡單的單元測試,但唯一可以讓測試通過的方法是重新啓動TFS服務,那麼項目建立和測試通過一次。下一次我運行它時,出現以下錯誤。TFS 2015無法刪除先前成功構建後的NUnit測試dll

Build 
(-1, 0) 
Exception Message: Access to the path 'C:\Builds\2\RGDAgile\RGD.Common\src\RGD.Common\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.dll' is denied. (type UnauthorizedAccessException) 
Exception Stack Trace: at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 
at System.IO.File.InternalDelete(String path, Boolean checkHost) 
at System.IO.File.Delete(String path) 
at Microsoft.TeamFoundation.Common.FileSpec.DeleteFile(String path, Boolean throwExceptionOnFailure) 
at Microsoft.TeamFoundation.Common.FileSpec.DeleteDirectoryInternal(String path) 
at Microsoft.TeamFoundation.Common.FileSpec.DeleteDirectoryInternal(String path) 
at Microsoft.TeamFoundation.Common.FileSpec.DeleteDirectoryInternal(String path) 
at Microsoft.TeamFoundation.Common.FileSpec.DeleteDirectoryInternal(String path) 
at Microsoft.TeamFoundation.Common.FileSpec.DeleteDirectoryInternal(String path) 
at Microsoft.TeamFoundation.Common.FileSpec.DeleteDirectory(String path, Boolean recursive, Boolean handleLongPaths) 
at Microsoft.TeamFoundation.Build.Workflow.Activities.DeleteDirectory.Execute(CodeActivityContext context) 
at System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) 
at System.Activities.ActivityInstance.Execute(ActivityExecutor executor, BookmarkManager bookmarkManager) 
at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation) 

就好像以前的版本沒有釋放,因此下一次的版本是運行它無法清除目錄拉新代碼下的dll的控制。

任何幫助,將不勝感激。我不能是唯一在TFS 2015上運行NUnit的人

回答

0

我看到packages文件夾簽入到源代碼控制時出現這種情況。刪除packages文件夾(理想情況下,通過您的NuGet.config的設置忽略它),並讓構建過程根據需要恢復軟件包。

您還應該考慮遷移到新的構建系統,因爲它在大多數方面都優於舊的XAML構建系統。

+0

感謝丹尼爾描述,我會盡力在週一讓你知道我是如何得到 –

+0

都能跟得上包中..問題依然沒有文件夾檢查。任何其他想法? –