Multiple Programming Languages Support Customizable Bug Localization Framework

Bug localization technique is effectual approach for locating software bugs using the number of failing and passing test cases that execute the statement. However, existing bug localization tools only support one type of programming languages and one type of suspiciousness metrics. In this paper, We presents customizable bug localization framework supporting multiple programming languages and multiple suspiciousness metrics. By apply each suspiciousness metrics to multiple programming languages and comparing, we show the availability of our proposed. Keyword Bug Localization,Fault Localization,Debugging,Multiple Programming Languages 1. はじめに バグローカリゼーションとは,テスト失敗の原因と なるコードの箇所を推定する手法で,テストケースの 実行パスとテスト結果から,コード内の各ステートメ ントに対して,それらがバグを含んでいるかどうかの 疑わしさを示すメトリクス Suspiciousness(Susp)の値 を算出する. バグローカリゼーションは,バグ位置推定において その有効性が注目を浴びているが,既存のバグローカ リゼーションツールは単一のプログラミング言語にし か対応しておらず,加えて単一の Susp 算出式しか適用 できない.そこで我々は,複数のプログラミング言語 に対応し,Susp 算出式が変更可能なバグローカリゼー ションフレームワークを提案する.複数のプログラミ ング言語に対してそれぞれの Susp 算出式の適用を行 うことで本手法の有用性を確認する. 本論文では以下の 5 点を研究課題をとする. RQ1:実開発においてバグ位置推定に役立つか RQ2:Susp 算出式を容易に変更可能か RQ3:複数の異なるプログラミング言語で適用可能か RQ4:新しい Susp 算出式を容易に追加できるか RQ5:新しいプログラミング言語に容易に対応可能か 本論文の貢献を以下に示す. ・実開発におけるバグローカリゼーションの有効性の 検証結果 ・複数プログラミング言語に対応したバグローカリゼ ーションフレームワークの実装 ・Susp 算出式が容易に変更・追加可能なバグローカリ ゼーションフレームワークの実装 2. 背景 2.1. バグローカリゼーション バグローカリゼーションでは,テストケースの実行 パスとテスト結果を用いて各ステートメントの Susp 値を算出する.デバッグ時は,各ステートメントを Susp 値が高い順にランキング化し,上位のステートメ

[1]  Hironori Washizaki,et al.  OCCF: A Framework for Developing Test Coverage Measurement Tools Supporting Multiple Programming Languages , 2013, 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation.

[2]  W. Eric Wong,et al.  On the Consensus-Based Application of Fault Localization Techniques , 2011, 2011 IEEE 35th Annual Computer Software and Applications Conference Workshops.

[3]  Fuyuki Ishikawa,et al.  Open Code Coverage Framework: A Framework for Consistent, Flexible and Complete Measurement of Test Coverage Supporting Multiple Programming Languages , 2011, IEICE Trans. Inf. Syst..

[4]  P. Jaccard,et al.  Etude comparative de la distribution florale dans une portion des Alpes et des Jura , 1901 .

[5]  P. F. Russell,et al.  On Habitat and Association of Species of Anopheline Larvae in South-eastern Madras. , 1940 .

[6]  Mary Jean Harrold,et al.  An empirical study of the effects of test-suite reduction on fault localization , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[7]  A.J.C. van Gemund,et al.  On the Accuracy of Spectrum-based Fault Localization , 2007, Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007).

[8]  Hironori Washizaki,et al.  Open Code Coverage Framework: A Consistent and Flexible Framework for Measuring Test Coverage Supporting Multiple Programming Languages , 2010, 2010 10th International Conference on Quality Software.