我需要测试使用datetime.datetime.now()的函数。做这件事最简单的方法是什么?
发布于 2022-06-07 08:49:31
还有一个菜谱,使用pytest-mock和显式MagicMock来包装now方法:
from datetime import datetime
from my_module import fn_returning_datetime_now
def test_datetime(mocker):
NOW = dt.datetime(1999,1,1)
mock_datetime = mocker.MagicMock(wraps=datetime)
mock_datetime.now.return_value = NOW
mocker.patch("my_module.datetime", mock_datetime)
assert fn_returning_datetime_now == NOW这只是这里的其他答案的一个变化,使用mocker.patch而不是monkeypatch。
https://stackoverflow.com/questions/20503373
复制相似问题