2008-12-18 75 views
5

我正在開發一個使用主要以C和C#編寫的代碼的軟件開發項目。目前,測試的責任主要在於開發人員更改代碼。自動測試.NET(Gallio?)

我有興趣實施自動化測試框架,以幫助我們提高代碼質量。特別是,每次將代碼提交給版本控制時都會進行自動化測試,這將非常有用。

我對自動化測試(或針對該問題的單元測試)沒有太多經驗。有沒有人使用C/C#的測試框架進行開發,如果有的話,我們可能會面臨一些障礙,在公司範圍內和相當大的現有代碼基礎上實現它們?

特別是,我一直在尋找如何使用Gallio。對此特定產品的任何意見將不勝感激。

其他信息

Adding unit tests to an existing project
Unit Testing Legacy ASP.NET Webforms Applications
Moving existing code to Test Driven Development
Favorite .NET Unit Testing framework

回答

3

坦率地說,這聽起來像你正在尋找理由不去做。只需購買NUnit即可開始使用。從最小的一塊開始,讓腳溼潤。

+1

相反,我想非常糟糕地使用單元測試。然而,這需要向100位左右的人員推廣,我想確保我們將時間和精力投入到適當的工具中。 – Tim 2008-12-18 20:22:33

1

當我使用它(幾年前)時,TestComplete非常體面且易於使用。至少在那時,你需要學習一些VBScript。

0

我們使用AutomatedQA的TestComplete,它是一個很好的GUI測試平臺。 我們在Jscript中完成了我們所有的TestComplete代碼,這並不是很好,但它完成了工作。我不確定我會推薦自動化GUI測試,但我認爲你會在單元測試中獲得更好的回報。

Nunit和rhino mock是單元測試的好工具。

CruiseControl看起來像是在每個版本上設置自動測試的最佳方式。

3

Gallio實際上是整個測試工具鏈的框架。從編寫測試,到運行它們以發佈構建過程。它爲每個步驟提供常用設施和標準化接口,以便在構建過程時提供更多選擇和靈活性。

它附帶默認使用的MbUnit框架版本。它還配備了名爲Icarus的GUI運行器和名爲Echo的控制檯運行器。它們在測試社區中都是備受推崇的工具。

對於大型公司來說,這是一個很好的選擇,因爲它可以讓您利用許多流行的測試和持續集成工具以最少的集成難題。

採摘框架和寫作測試只是戰鬥的一半,加利奧真的幫助另一半;整合構建過程中的所有其他步驟。

目前唯一真正的缺點是缺乏示例和信息的中央存儲庫。對於一些人來說,它的一個相對較新的舉措可能會讓他們立即使用它。

Check out the docs here.他們是一個正在進行的工作,並且非常不完整,但會讓你開始編寫測試的基礎知識。關注其他信息請關注Jeff Browns Blog