コンポーネントテスト
2013 年 4 月 22 日
コンポーネントテストとは、テスト対象のソフトウェアの範囲を対象システムの一部に限定したテストです。これは、可能な限り多くのシステムを対象とする ブロードスタックテストとは対照的です。
ブロードスタックテストとコンポーネントテストの違いは、絶対的な違いというよりは程度の違いです。コンポーネントテストは、コンポーネントを定義する範囲内で、大きくも小さくもすることができます。違いの本質は、コンポーネントテストはテストの範囲外のシステム部分を意図的に無視することです。これは通常、xunit テストツールなどのツールを使用して内部コードインターフェイスを通じてシステムを操作し、テストダブルを使用してテスト対象のコードを他のコンポーネントから分離することで行われます。
コンポーネントテストは、通常、ブロードスタックテストよりも作成と管理が容易です。また、コードベースの一部のみを対象にするため、実行も高速です。理論的には、優れたコンポーネントテストカバレッジを持つシステムはバグがないはずですが、実際にはバグはコンポーネント間のインタラクションに潜んでいます。したがって、テストピラミッドを使用し、大量のコンポーネントテストと少数のブロードスタックテストを組み合わせるのが良いでしょう。