複数のファイルを含む Go パッケージでの共有テスト コードの処理
複数のファイルを含む Go パッケージでは、それぞれに個別のテスト ファイルを作成するのが一般的ですソースファイル。ただし、テストで共有ヘルパー関数が必要な場合、コードの重複が発生する可能性があります。
解決策: テスト パッケージの共有識別子の利用
コードの複製を回避するために、Go ではテストを許可します。同じ package 句内のファイルを使用して、明示的な import ステートメントを使用せずに、エクスポートされた識別子とエクスポートされていない識別子を相互に参照します。これは、共有テスト コードを任意のテスト ファイルに配置でき、同じパッケージ内の他のすべてのテスト ファイルからアクセスできることを意味します。
構造例
次のファイルを含むパッケージを検討します。
mypackage/ mypackage.go mypackage_test.go helper_test.go
製品コードを汚染することなく、helper_test.go で共有テスト ヘルパー関数を定義できます。
説明
helper_test.go は mypackage_test.go に直接インポートされませんが、一致するパッケージ句 (パッケージ mypackage_test) により、同じテスト パッケージに属します。これにより、mypackage_test.go が helper_test.go で宣言された識別子にアクセスできるようになり、コード共有とテストの保守性が可能になります。
追加メモ
以上が複数のファイルを含む Go パッケージでのテスト コードの重複を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。