2
我可以知道爲什麼測試失敗,即使函數實際拋出異常嗎?jython單元測試
def testDateCreation(self):
self.assertRaises(ValueError, datetime.date(2013, 2, 29))
我可以知道爲什麼測試失敗,即使函數實際拋出異常嗎?jython單元測試
def testDateCreation(self):
self.assertRaises(ValueError, datetime.date(2013, 2, 29))
你要麼必須使用assertRaises
作爲上下文管理器(如果正在運行的Python 2.7):
with self.assertRaises(ValueError):
datetime.date(2013, 2, 29)
,或者提供一個功能,assertRaises
可以撥打:
self.assertRaises(ValueError, lambda: datetime.date(2013, 2, 29))
否則,異常之前assertRaises
被調用,因此無法處理。
這兩種方法都有效。多謝你,多米尼克。你必須是一個蟒蛇冠軍。一旦我擁有足夠的聲譽,我會加倍努力。 – 2013-02-28 22:43:44
很高興我能幫到你。還請[接受](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)我的回答:-) – sloth 2013-03-01 07:10:46