標題可能聽起來有點不可思議。請允許我使用示例進行詳細說明。通用單元測試是否符合常規.net接口和重載規則的一致性實現?
Object.Equals
函數通常要求a.Equals(a)
返回true。除非你在代碼中做了某些事情,否則每個班級都應該遵守這個規則。
所以我們可以編寫一個通用的單元測試來檢查所有可用的類。 (我們可能會排除顯式標記某些屬性的類。)
而不是僅使用Equals,我們還檢查所有IComparer實現的正確行爲,以及您可以想象的任何標準接口。
現在,我的問題是:這是否已經存在?如果沒有,爲什麼這是一個壞主意?
那麼,你總是可以使用AutoFixture來創建類的實例...... http://autofixture.codeplex.com/ – 2009-12-16 13:19:48
是的,我猜這樣的事情會起作用。 – mafu 2009-12-16 13:25:24
+1順便說一句。好答案 :) – 2009-12-16 13:36:08