2008-12-20 71 views

回答

25

它已經發展了近幾年的答案是,你不適用TDD的GUI,你設計圖形用戶界面(GUI)的方式可以使用TDD進行開發。 Gui被簡化爲ViewModel控件的簡單映射,通常使用框架綁定,所以在TDD中被忽略。

這是衆所周知的Presentation Model(福勒)Model-View-ViewModelDataModel-View-ViewModel架構。

該方法從TDD和單元測試中刪除GUI層。這並不意味着GUI從未經過測試,只是承認追求自動化GUI測試並不具有成本效益,特別是作爲TDD的一部分。集成和用戶測試應涵蓋GUI。

約什史密斯的2009 WPF article是一些測試MVVM的詳細解釋。

最近,Houssem Dellai的2016 video Creating Unit Tests for Xamarin Forms Apps顯示了XAML UI與綁定視圖模型,並通過創建單元測試項目

+0

偉大的答案,謝謝散步。但請注意,「良好討論」的鏈接幾乎沒有用處 - 它指向搜索ViewModel,這是一個大規模的區域,其中包含大量與TDD無關的討論。特定討論的鏈接將會很有用。在過去的幾天裏,我一直在深入地探討這個話題,對此問題幾乎沒有討論。 – 2017-02-25 22:27:38