2010-05-04 159 views
9

我們目前正在將VS2010作爲測試驅動器,到目前爲止,我們對於它將不會與我們現有的Team Foundation Server 2008進行合作有點困惑。 我們仍然有我們所有關於.NET 3.5的項目以及無論何時我們正在構建包含單元測試項目(自動構建.NET 4.0)的解決方案時,TFS都無法構建它。Visual Studio 2010和TFS 2008:構建單元測試項目

的.NET 4.0框架安裝在TFS 2008

我們收到的錯誤是:

[Any CPU/Release] c:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets(0,0): warning MSB3245: Could not resolve this reference. Could not locate the assembly "Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors.

作爲臨時解決辦法,我們現在不得不刪除了所有的測試項目,以便我們的解決方案構建。

+0

是安裝VS2010中端唯一的解決辦法? – CraftyFella 2010-05-10 11:41:28

+0

我發佈了這個問題,希望找到其他的解決方案,但你可以看到...似乎沒有任何。 至少我們還沒有找到。我們發現VS2008也安裝在buildserver上,現在我們知道爲什麼了;) – Peter 2010-05-10 12:45:17

回答

3

你需要在你的機器上安裝VS2010。

+2

這不是有點荒謬嗎?我們的構建服務器並不意味着要開發...不能把所有必需的DLL包裝在「服務器包」中或其他東西... 雖然它確實能夠工作,並且它可以額外收取VS2010許可證我想。 – Peter 2010-05-04 08:47:52

+0

我同意這是可笑的,不知道關於充電,但。 – 2010-05-04 09:03:10

+0

我認爲VS2010 Express會這樣做,我錯了關於充電。 – Peter 2010-05-05 11:00:13

3

心中已經剛剛嘗試在TFS2008構建V4.0解決方案,並改變了C:\ Program Files文件\微軟的Visual Studio 9.0 \ Common7 \ IDE \ PrivateAssemblies \ tfsbuildservice.exe.config文件:

<add key="MSBuildPath" value="" /> 

<add key="MSBuildPath" value="c:\Windows\Microsoft.NET\Framework\v4.0.30319\" /> 

的V3.5和V4.0解決方案構建沒有成功。但是v3.5解決方案的單元測試不起作用。

閱讀關於在構建服務器上安裝VS2010,但在其他地方閱讀:(http://www.richard-banks.org/2009/11/how-to-build-vs2010-solutions-using.html),可以不安裝VS2010。


這個工作對我們允許TFS 2008生成代理編譯VS 2010解決方案/項目文件,而無需安裝VS 2010:

  1. 安裝.NET Framework 4.0,從該網站的文本和.NET Framework 3.51 SP1(由於某些原因,SP1不包含在4.0中?)
  2. 安裝Windows SDK 7.0A。當我寫這篇文章時,SDK仍然沒有發佈,因此我們必須: 從裝有VS 2010的計算機上,從%programfiles%\ Microsoft SDKs \ Windows \ v7.0A複製SDK文件夾並從HKLM \ SOFTWARE \ Microsoft \ Microsoft SDKs \ Windows \ 7.0A添加到生成計算機。
  3. 將%programfiles%\ MSBuild \ Microsoft \ VisualStudio \ v10.0複製到生成機器
  4. 將您的TFSbuild.proj文件中的ToolsVersion從3.5更改爲4.0。

我認爲就是這樣。沒有必要更改構建代理的配置文件。


希望這會起作用。

+0

非常有趣!與此同時,我們已經將Team Foundation Server升級到2010年,所以我無法測試您的解決方案,但是感謝發佈! – Peter 2010-11-05 15:41:19