1

我是TFS的新手,我們試圖自動化構建的測試/構建/部署過程。TFS的自動化構建和發佈要求

我遇到的問題是,當我嘗試使用MSBuild參數開始自動部署(對於網頁)的構建時,它抱怨它沒有必要的DLL,並且我已經找到了目前爲止他們使用Visual Studio Premium或Ultimate進行安裝,但其他人抱怨說Visual Studio不應該安裝在服務器上=)

TFS也是現在的構建服務器,我希望知道這些東西是否有任何已知的要求:

  • 自動UI測試
  • 自動化部署
  • 自動發佈
  • 代碼分析

我與TFS 2010和Visual Studio 2010(專業版)的工作。歡迎任何幫助,意見或不同方法=)

回答

3

我們在團隊中處理的方式是實際檢查構建產品到源代碼控制所需的所有參考。任何超越了.NET框架本身,也不論你安裝一個編譯器/生成代理,獲取籤..

正位:

  • 設置生成代理是微不足道的(只是「安裝服務器2K8R2,安裝構建代理,開始構建「)。
  • 不必擔心複雜的SDK安裝與人們的開發框匹配。引用是檢入到源代碼控制的所有確切版本。
  • 您得到二進制版本控制,這意味着如果您需要維護版本並針對去年特定API的版本進行構建,那麼這非常容易。

負位:

  • 發生膨脹源控制位
  • 感覺怪怪的檢查二進制文件到源代碼控制
  • 必須關於維護你如何結構和潔淨度非常警惕檢查二進制文件,否則很容易失控

除此之外,至於使測試位從您的構建代理工作..最簡單的方法可能是安裝測試代理。 VS2010中的UI自動化是「CodedUI Test」框架。它擴展了正常的VS單元測試框架,但需要一些額外的註冊才能工作。

更復雜,但超級有用的長期是建立完整的「Visual Studio實驗室管理」平臺。不足之處是,充分利用它,你會需要連接的系統中心虛擬機管理器服務器和至少一個Hyper-V主機,並與「乾淨」 VM快照(一切打造出一個虛擬機,除了產品你正在測試安裝)。一旦所有這就是在地方,你得到一個真的光滑終端到終端的構建 - 部署 - 測試經驗。你觸發該產品通過構建系統構建,一旦完成環境恢復到絕對乾淨的狀態(無後顧之憂關於來自上次版本的殘留位損壞您的測試等),產品將發佈到此測試環境,然後執行您的測試。

不知道,如果你正在使用TFS爲工作項跟蹤,測試用例管理,項目策劃,和諸如此類的東西。如果不是,實驗室管理的東西可能是太重量級與混亂。如果你對這部分有興趣,更多信息here。 :)

+0

感謝,我會definatly儘快討論這個方法=)你知道,如果代碼分析也只需添加任何需要的源代碼控制的參考設置? – Nischo 2012-01-11 07:42:42

+0

要添加,TFS11將使物理機器上的測試變得更容易,不能等待! – 2012-01-11 17:52:27

+0

@Nischo:是的,很確定我們檢查我們的FxCop和StyleCop二進制文件到我們引用的源代碼控制中的類似位置。我知道我們確實使用規則集來做到這一點,以便不同的項目可以有不同的規則集(不僅僅是標準的GlobalSuppressions文件或其他)。 – superlime 2012-01-24 07:44:51

0

你的構建服務器需要的Visual Studio版本合適。例如,如果你想做數據庫單元測試,那麼構建服務器需要安裝VS Ultimate。

如果有與具有「客戶端」軟件安裝在服務器上的問題,那麼使用單獨的構建服務器。構建服務器具有安裝必要的工具以執行構建是非常合理的。