本研究はアスペクト指向プログラミング(AOP)の新たなポイントカット機構として,テストに基づいたポイントカットを提案する.AOP言語はアスペクトを適用する時点を指示しなければならない.既存のAOP言語のポイントカットは,アスペクトが適用されるプログラム中の型名やメソッド名により指示を行うため,プログラムの些細な変更に応じてアスペクトの変更が必要であった.テストに基づいたポイントカットでは,テストを通じて間接的にアスペクトが適用される時点を指示する.そのため,プログラムの変更時にテストも修正される前提の下では,ポイントカット記述の変更が必要なくなる.またテストに基づいたポイントカットは,テストごとに異なる実行履歴を利用して,プログラムの実行時の実行履歴に依存したアスペクトの適用を指示することができる.そのため,適用するプログラムの特定の分岐などの時点を詳細に指示する必要がなくなり,簡潔な記述を得ることができる.実際にいくつかの事例に対してテストに基づいたポイントカットを利用し,ほとんどの場合に既存のAspectJによる記述よりも変更に強く簡潔な記述が可能であることを確認した.