カクカクしかじか

技術的なアレコレ

Jestでテスト実行時に時間を固定する方法とその戻し方

結論

jest.useFakeTimers で止めて、 jest.useRealTimers() で戻します。

beforeEach(() => {
  jest.useFakeTimers({ now: new Date("2023/01/01") });
});

afterEach(() => {
  jest.useRealTimers();
});

jestjs.io

jestjs.io