本研究では、テスト・スイートの縮小を効率的に行うために、言語モデルを活用したアプローチ(LTM)を提案している。
まず、テストメソッドのソースコードをトークン化し、5つの事前学習済み言語モデル(CodeBERT、GraphCodeBERT、UniXcoder、StarEncoder、CodeLlama)を使ってエンベディングを生成する。次に、コサイン類似度とユークリッド距離の2つの類似度指標を用いて、これらのエンベディング間の類似度を計算する。最後に、遺伝的アルゴリズムを使って、与えられた縮小予算に基づいて最適なテスト・サブセットを見つける。
LTMの評価では、17のJavaプロジェクトの835バージョンを対象に、故障検出率(FDR)と縮小時間(MT)を測定した。その結果、LTMの最良構成(UniXcoder/コサイン類似度)は、ATMよりも若干高いFDR(0.84 vs 0.81)を達成し、さらに平均で5倍高速に縮小を行うことができた。特に大規模なプロジェクトでの縮小時間の短縮が顕著であり、LTMの高いスケーラビリティが示された。
다른 언어로
소스 콘텐츠 기반
arxiv.org
더 깊은 질문