KDOC 619: テストを最小限の手数で並列実行する

この文書のステータス

  • 作成
    • 2026-09-17 貴島
  • レビュー
    • 2026-09-17 貴島

概要

並列度1の実行しか許容しない、 jest で実行するテスト群があった。テスト内にデータベースを使う関数のテストが含まれていて、並列度を増やしてテスト実行するとテストケース間のレコードが混ざって大量に失敗した。これを最小限の手数(約200行の変更)で並列実行にしてマシンのCPUをほぼ使い切れるようにした。

コアアイデア。

jest ワーカーごとに Postgres の Database を分離する。ここでいう Database は CREATE DATABASE のそれである。並列実行するワーカーごとに専用の Database を使って隔離すれば、ワーカー間でレコードが競合しなくなる。

関連

なし。

Backlinks