2012-10-25 17 views
1

我的設立是以下:試驗:使用SpecFlow或任何其他框架的用戶交互的所有可能的排列

  • WPF客戶端書面方式使用MVVM模式
  • 一組單元的測試
  • 一組SpecFlow scenarious的

在創建SpecFlow場景時,我首先繪製一個狀態機圖來查看用戶交互的所有可能排列以及從一個狀態到另一個狀態的需求。然後我創建一個所有可能場景的列表。

例如:

  • 用戶按壓有 - >上傳文件 - >刪除文件 - >點擊 提交
  • 用戶按壓有 - >上傳文件 - > cliks提交
  • 用戶按壓是 - >點擊提交

這可以確保我們測試所有可能的場景,不會錯過任何。然而,這是一個單調乏味的過程,如果需求發生變化,它會變得很成問題。

我不知道是否有一個框架可以從你的狀態機創建你的場景,所以如果從狀態機中刪除這個步驟,它會自動重新創建你的場景。

回答

1

如果您真的從狀態機生成測試用例,我建議您查看「基於模型的測試」工具。

在.NET世界中,spec explorer允許你這麼做:SpecExplorer 2010

7

BDD場景工具通常旨在啓用,捕獲和自動化開發團隊和業務涉衆之間的對話。你正在做的是測試。

與其使用BDD工具,我建議編寫自己的,或者在「測試框架」下而不是在BDD和SpecFlow標籤下尋找其他人的工作。

BDD不能很好地進行徹底測試。相反,它最適合用於說明應用程序行爲的一些場景。這有助於開發人員確定他們瞭解業務問題,並顯示他們的代碼支持該解決方案。

如果您爲此使用BDD工具,您將開始發現您創建的場景確實難以維護。英語不能像代碼一樣重構。你的狀態機甚至可能在單元測試下更好(或者更低級的BDD工具 - I just use NUnit)。

相關問題