我有的場景是從卡組中抽取指定數量的卡片並按排序順序(首先是西裝,然後是面值)返回它們。使用Assert的單元測試案例
<param name="howMany">how many cards to draw.
<returns>a list of drawn cards, sorted by suit and face value (rank)</returns>
我已經編寫了這個方法來實現它。我必須爲它寫一個單元測試代碼。有什麼可能的單元測試,因爲它有一個列表來比較和如何實現。
public List<Card> DrawSorted(int howMany)
{
List<Card> drawnCards = _cards.Take(howMany).ToList();
IEnumerable<Card> sortedCards = from card in drawnCards
orderby card.Order ascending
select card;
return sortedCards.ToList();
}
任何幫助深表感謝
其實這不是一個問題,有牌的排序甲板上,然後用第N卡從這個分類結果進行比較甲板。我也會重命名這個方法,因爲它不會*畫*卡。我會添加測試以驗證不正確的* howMany *值的行爲(零,小於零,然後是套牌大小) –
好點。雖然方法名稱沒有說明它正在測試繪圖,但嚴格來說,我現在仍然重命名它,使其更簡單一些,不太可能被誤解。這是一個開始;我想你可以添加更多的測試,例如去測試各種潛在的錯誤,但我也不想過度。你不應該覺得你_absolutely有to_測試每一種可能的不測事件 - 剛剛夠,你可以感受到有理由相信你的代碼。 – Kjartan