Core Concepts
プログラム解析を活用することで、LLMベースのテスト生成手法の複雑なブランチカバレッジ向上を実現する
Abstract
本研究では、LLMベースのテスト生成手法TELPAを提案している。TELPAの主な特徴は以下の通りである:
後方メソッド呼び出し解析を行い、対象メソッドの複雑なオブジェクト構築プロセスを学習する。これにより、LLMがこれらの複雑なオブジェクトを生成できるようになる。
前方メソッド呼び出し解析を行い、ブランチ条件に関わる複雑な相互依存関係を理解する。これにより、LLMがブランチ制約の意味論を把握できるようになる。
既存の非効果的なテストをカウンターサンプルとして活用し、LLMに対してそれらと異なるテストを生成するよう指示する。これにより、効率的かつ効果的なテスト生成を実現する。
実験の結果、TELPAは既存の検索ベースのソフトウェアテスト手法やLLMベースの手法と比べて、平均31.39%および22.22%高いブランチカバレッジを達成した。
Stats
テスト生成ツールPynguinは平均44.77%のブランチカバレッジを2.57分で達成し、その後17.43分で48.80%まで向上した。
CODAMOSAは平均44.72%のブランチカバレッジを3.51分で達成し、その後16.49分で51.93%まで向上した。