使用 assertRaises 单元测试进行日期比较
Using assertRaises unit test for date comparison
我试图在 Python 中使用 assertRaises(ValueError)
到 return 当我的代码开始日期晚于结束日期时出现错误。
class TestDateUtils(unittest.TestCase):
def test_date_range(self):
start_date = datetime.date(2020, 1, 1)
end_date = datetime.date(2020, 1, 1)
expected = start_date < end_date
actual = start_date > end_date
with self.assertRaises(ValueError):
if actual:
raise ValueError
else:
expected
print("all fine")
我是 Python 的新手(这可能远不是正确的写法)。
有谁知道尝试产生此最终结果的正确语法吗?如果我的开始日期晚于结束日期,我只想提出一个值错误。
assertRaises
的目的是测试被测代码在特定情况下是否引发异常;它不是为了引发值错误。
如果你想在测试用例中断言一个值小于另一个,你可以使用assertLess
or assertLessEqual
.
例如
self.assertLess(end_date, start_date)
我试图在 Python 中使用 assertRaises(ValueError)
到 return 当我的代码开始日期晚于结束日期时出现错误。
class TestDateUtils(unittest.TestCase):
def test_date_range(self):
start_date = datetime.date(2020, 1, 1)
end_date = datetime.date(2020, 1, 1)
expected = start_date < end_date
actual = start_date > end_date
with self.assertRaises(ValueError):
if actual:
raise ValueError
else:
expected
print("all fine")
我是 Python 的新手(这可能远不是正确的写法)。 有谁知道尝试产生此最终结果的正确语法吗?如果我的开始日期晚于结束日期,我只想提出一个值错误。
assertRaises
的目的是测试被测代码在特定情况下是否引发异常;它不是为了引发值错误。
如果你想在测试用例中断言一个值小于另一个,你可以使用assertLess
or assertLessEqual
.
例如
self.assertLess(end_date, start_date)