はじめに 今回は、ソフトウェアテストに関わる個別テーマとして「テスタビリティ」(テスト容易性、試験性)について解説します。 テスタビリティとは、「どれだけ容易にテストできるか」「どれだけテストを実現できるか」の度合いを示すものです。テストにコストをかけているならば、テスタビリティの高低はチームの生産性に影響します。今回はこのテスタビリティを対象に、具体像や作り込みのアプローチを解説します。 テスタビリティの概要 テスタビリティには、例えば「テスト対象の網羅のしやすさ」「テスト自動化のしやすさ」「テストに影響のある変更の少なさ」「テストが求めるテスト環境の複雑さ」が含まれます。テスタビリティを向上させると、次のメリットが得られます。 テストの効率性の向上。より小さなコストやリソースでテストできるようにする テストの有効性の向上。もともと実現が困難だったテストの実行や、既存のテストの用途拡大を