您需要monkeypatch datetime.now函数。在下面的示例中,我正在创建固定装置,以后可以在其他测试中重复使用:
import datetimeimport pytestFAKE_TIME = datetime.datetime(2020, 12, 25, 17, 5, 55)@pytest.fixturedef patch_datetime_now(monkeypatch): class mydatetime: @classmethod def now(cls): return FAKE_TIME monkeypatch.setattr(datetime, 'datetime', mydatetime)def test_patch_datetime(patch_datetime_now): assert datetime.datetime.now() == FAKE_TIME



