2

我可以知道为什么这个测试失败了,即使函数实际上抛出了异常?

def testDateCreation(self):
   self.assertRaises(ValueError, datetime.date(2013, 2, 29))
4

1 回答 1

2

您要么必须使用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-28T08:10:16.373 回答