我正在考慮如何構建我的驗收測試的兩種不同方法。我們有一個調用到服務層的Silverlight項目(我擁有雙方)。由於Silverlight的方式,調用Silverlight程序集的測試代碼必須位於與其他非Silverlight測試不同的測試項目中。 1)採取我們想出的所有接受標準,並將它們放入特徵文件中。用標籤標記場景以指定它們將運行的環境(@server,@client等)。在功能文件中也包含手動測試,並用@manual標記標記它們。如何構建驗收測試和測試計劃?
優點: 所有這一切得到由BAS的寫上去的測試會在一個地方給他們查看並潛在編輯
缺點: 它可能會更有意義測試一些與單位的情景測試或集成測試和NUnit可能是比SpecFlow更好的工具
2)爲所有東西寫入接受標準,但隨後在SpecFlow中自動化一些,一些使用單元測試,一些使用集成測試等。只有SpecFlow-自動化場景將在SpecFlow中。我們可能會將要進行單元測試,集成測試或手動測試的場景放入功能文件中,但這些場景實際上不會運行任何代碼,它們只是出於文檔目的而存在。
優點: 減少開發人員的摩擦和開銷。我們將使用我們針對每項測試所擁有的最佳工具自動執行不同的測試。
缺點: 我們將不得不讓SpecFlow運行的場景與任何代碼自動執行同步。
想法?有沒有另一種我沒有想到的方式?你怎麼做呢?