0
,這可能是一個明顯的答案,但我無法弄清楚如何最好地創建單元測試以下:如何編寫單元測試時間敏感常數
Assert.AreEqual(27, AgeCalculator.GetAge(new DateTime(1983, 10, 6))); // this test will fail tomorrow
Assert.AreEqual(26, AgeCalculator.GetAge(new DateTime(1984, 11, 14)));
Assert.AreEqual(9, AgeCalculator.GetAge(new DateTime(2002, 05, 7)));
Assert.AreEqual(7, AgeCalculator.GetAge(new DateTime(2003, 11, 03)));
Assert.AreEqual(4, AgeCalculator.GetAge(new DateTime(2007, 05, 10)));
我已經創建了一個GetAge()方法,我想要測試以確保對該方法的任何未來更改都可以。
感謝鏈接 - 這是一個偉大的系列。非確定性是我一直在尋找的詞,但在發佈問題時沒有點擊:)再次感謝 – DaveHogan
有時很容易忘記,當您詢問當前時間是否在您的系統時鐘上創建隱式依賴關係時。將這些調用包裝在自己的時間提供程序中,就像這篇文章所做的那樣,將立即提高單元測試的穩健性。 –