2011-11-25 125 views
8

我在練TDD有一段時間了,我想提高自己的技能,並開始做ATDD, 我讀到了Ruby和Java框架,但沒有聽到太多關於.NET.NET中用於編寫驗收測試的最新維護最新框架是什麼?

什麼是最保持最新用於編寫驗收測試的.NET框架?

編輯:在閱讀更多我想說明的是,我正在接受網站和Web應用的驗收測試,任何可能它也必須考慮GUI測試。

回答

1

我們剛開始使用FitNesse,到目前爲止我對這個決定感到滿意。一個非常簡短的概述:

  1. 你在維基中編寫測試。
  2. 您可以編寫一個'測試夾具'模塊(可以是一個c#程序集),其中 提供了Wiki中的'測試'和SUT (被測系統)之間的橋樑。
  3. 當您運行測試時,FitNesse引擎使用反射將wiki測試轉換爲對測試夾具組件的調用,調用組件調用SUT。返回值會傳回給Wiki,以便您可以「維護」它們。

測試夾具代碼的公共界面實際上是您在Wiki中用於編寫測試的語言。我不確定我是否很好地解釋過這一點,但網絡上有充足的資源和視頻。我建議來自FitNesse的作者Bob Martin的this one

我選擇了FitNesse的一些原因:

  • 完善的框架
  • 作品與.NET中使用FitSharp插件:http://fitnesse.org/FitNesse.DotNet
  • 因爲在維基測試都寫在你定義的語言在你的夾具代碼中,它們是可讀的
  • 可以通過命令行調用測試,這是我們想要的持續集成。強大的1:如果SUT的接口發生變化,您只需要更改測試夾具代碼,而不是測試
  • 強大的2:我們不是在易失性UI級別進行測試。

需要一點時間才能習慣,但我覺得它比我們目前通過UI進行測試的概念更可靠。我們目前在家庭自制應用程序中執行此操作,該應用程序通過播放預先記錄的用戶界面操作和比較屏幕截圖來工作。當測試是紅色時,很少會因爲SUT被破壞。通常,我們的UI控制計時問題不會立即反應,所以我們必須在UI操作之間建立延遲,這意味着需要整晚運行全套測試。

+0

FitNess如何與.NET相適應我明白它是Java的框架 –

+0

可以很好地與.NET結合使用。 Fitnesse框架作爲Java應用程序運行,但FitSharp插件可以與.NET測試夾具代碼一起使用。請參閱http://fitnesse.org/FitNesse.DotNet – GarethOwen

0

mSpec(機器規格)是非常流行的TDD/BDD框架。

nUnit是一個單元測試框架(其中可以也可用於驗收測試)。

-1

請考慮Ranorex作爲一個相當新的工具。

http://www.ranorex.com/

他們提供了一個完整的工具集,包括單元測試API,自動化引擎加上測試記錄做大量的工作。 總之 - 你用C#編寫測試,或者使用記錄器「記錄」它們,記錄器將它們寫爲C#代碼。

然後你「回覆」他們,運行你的C#代碼。您可以根據需要創建儘可能多的斷言,並且自動化API允許您在屏幕上自動顯示任何可見的內容。

ATDD的好工具,我們使用它一段時間,我們很滿意。

相關問題