共有状態 - CI/CD用語集の定義
共有状態はテスト間で再利用される可変データであり、テスト同士の干渉の一般的な原因です。
共有状態とは、複数のテストからアクセスされるデータやリソース(グローバル変数、シングルトン、共通のデータベース、ファイル)のことです。可変な共有状態は、不安定で順序に依存するテストの主要な原因です。
読み取り専用の共有状態(定数、fixture)は安全です。可変な共有状態は、分離を保つためにテスト間でリセットするか、テストごとにスコープを区切る必要があります。
CIでは
並列のrunnerは共有状態のリスクを増大させます。共有されるテスト用データベースには、workerごとのスキーマ、または各テスト後にロールバックされるトランザクションが必要です。
関連ガイド
Test Pollution - CI/CD Glossary DefinitionTest Pollution: Test pollution occurs when one test leaves behind state (files, database rows, global variabl…
Test Isolation - CI/CD Glossary DefinitionTest Isolation: Test isolation means each test runs independently, without depending on or affecting other te…
Setup - CI/CD Glossary DefinitionSetup: Setup is the phase that runs before a test to prepare the state it needs, such as creating objects, se…