我對單元測試和TDD'相對較新'。直到最近我才完成了我的第一個生產應用程序(至少在理論上)具有100%的代碼覆蓋率。在過去的項目中,我也做了一段時間的單元測試,但是沒有真正的TDD時尚和良好的代碼覆蓋率。它一直是一個後思想。不過,我覺得我現在對它有很好的把握。TDD所需的基礎設施?
我也想培養對TDD和單元測試團隊的其餘部分,以便我們能夠togeather成長,並開始在所有的應用程序在做單元測試前進,並最終發展成做全TDD W /自動化構建&持續集成。我發佈a thread here關於我的攻擊計劃/培訓議程批評&批評。
之一(最高投票的事實)的答覆建議我先安裝基礎設施在我走之前與訓練前行。不幸的是我沒有接觸到這一點,並在谷歌搜索的主題是困難的,因爲CruiseControl.NET /南特/等頁面沒有真正解釋了「爲什麼」,我們應該設置這和「如何」一切togeather連接。
我們是一個小商店(約10名開發人員),並用幾乎全部的微軟技術,並盡我們的發展VB.NET。我們希望最終開始使用C#,但這是另一次。我一直在使用VS2008附帶的MSTest項目來進行單元測試,並且我一直在使用Visual Studio構建我的應用程序,並使用MSI安裝項目進行部署......我們也(不幸地)將VSS用於我們的原始控制 - 但這也是在砧板上,我真的很想擺脫它,並使用顛覆。
我知道我需要使用CruiseControl.NET的CI,並且或者惡性或MSBuild的構建的應用程序。我可能需要一個構建服務器來運行所有這些構建。但我找不到任何「連接」點,並解釋它們如何與互相之間進行交互,應該在構建服務器上應該如何,何時使用構建服務器進行構建(僅用於部署構建,還是僅僅用於構建只是想在你的本地環境中進行一些小改動後編譯你正在開發的應用程序?)。我也打算砍死MSTest,因爲我發現它是越野車,並將使用nUnit。
任何人都可以闡明我從'知道如何做TDD'到'建立合適的基礎設施,以便整個團隊都能做到並努力工作'這個差距?我確實瞭解持續集成是什麼,但是我不確定應該如何設置構建服務器,以及它如何與一切相關聯,以及爲什麼我們需要一個(例如管理層)。
非常感謝您的時間。
我需要什麼部分的finalbuilder?看來這與最終建造者和團隊城市有一些重疊。 Finalbuilder服務器似乎是一個CI服務器,所以我猜我不需要這個。 FinalBuilder似乎是一個構建服務器 - 但我認爲TeamCity也是一個構建服務器......並且Automise似乎是一個可視化Windows自動化工具,就像某種WinForms應用程序的開發平臺一樣...
_I也在The Team City Supported Apps Diagram中看不到最終生成器的支持:_
我認爲下面的鏈接包含有關此主題的相當詳盡的一組信息:http://martinfowler.com/articles/continuousIntegration.html – Tomas 2009-12-14 18:36:14