Skip to main content
QUICK REVIEW

[論文レビュー] Investigating Software Testability and Test cases Effectiveness

Mamdouh Alenezi|arXiv (Cornell University)|Jan 25, 2022
Software Engineering Research被引用数 4
ひとこと要約

本研究では、静的コードメトリクスとテストメトリクスの関係を調査し、オブジェクト指向システムにおけるソフトウェアのテスト可能性およびテストケースの有効性を予測することを目的としている。1,186件のJavaオープンソースプロジェクトを対象に突然変異解析と複数の特徴選択アルゴリズムを用いた結果、サイズと複雑さのメトリクス—特にNBI、RFC、LOC、LOCCOM、WMC、NMC—がテスト可能性およびテスト有効性の主な予測要因であることが判明した。特に、NBIとRFCは、すべての評価手法において最も影響力が強いと判明した。

ABSTRACT

Software measurement is an essential management tool to develop robust and maintainable software systems. Software metrics can be used to control the inherent complexities in software design. To guarantee that the components of the software are inevitably testable, the testability attribute is used, which is a sub-characteristics of the software's maintabilility as well as quality assurance. This study investigates the relationship between static code and test metrics and testability and test cases effectiveness. The study answers three formulated research questions. The results of the analysis showed that size and complexity metrics are suitable for predicting the testability of object-oriented classes.

研究の動機と目的

  • 静的コードメトリクスとテストメトリクスがオブジェクト指向クラスのソフトウェアのテスト可能性およびテストケース有効性に与える影響を調査すること。
  • オブジェクト指向システムにおけるテスト可能性およびテスト有効性を予測するための、最も関連性の高いコードおよびテストメトリクスを特定すること。
  • コードおよびテストメトリクスを用いて、非効果的と効果的なテストケースを区別できる予測モデルを構築すること。
  • 開発者がテスト設計およびソフトウェア品質の向上を図るのを支援するため、テスト有効性と相関するメトリクスを浮き彫りにすること。

提案手法

  • 1,186件のオープンソースJavaプロジェクトから静的コードメトリクスおよびテストメトリクスを収集した。
  • テストケース有効性は、テスト品質の代理指標として突然変異スコアを用いて算出した。
  • メトリクスの重要度を順位付けするために、複数の特徴選択アルゴリズム(Gain Ratio、Information Gain、Symmetrical Uncertainty、OneR)を適用した。
  • 10分割交差検証を用い、複数の分類器を用いてモデルの性能を評価し、妥当性を確保した。
  • 分類精度を向上させるために、平均有効性を示すテストケース(離散化ノイズ)を除外した。
  • コードサイズと複雑さの2つのカテゴリに分けた28個のメトリクスの予測力を評価した。

実験結果

リサーチクエスチョン

  • RQ1どの静的コードメトリクスとテストメトリクスがオブジェクト指向クラスにおけるソフトウェアのテスト可能性を最もよく予測するか?
  • RQ2異なる特徴選択アルゴリズムは、テスト有効性を予測するコードおよびテストメトリクスの重要度をどのように順位付けするか?
  • RQ3コードおよびテストメトリクスを用いた予測モデルは、非効果的と効果的なテストケースを効果的に区別できるか?

主な発見

  • サイズと複雑さのメトリクス—特にNBI、RFC、LOC、LOCCOM、WMC、NMC—が、テスト可能性およびテストケース有効性の強力な予測要因である。
  • NBI(バイトコード命令数)とRFC(クラスに対する応答)は、すべての特徴選択アルゴリズムにおいて、一貫して上位2位の最重要メトリクスとして評価された。
  • LOC(コード行数)とLOCCOM(コメント行数)は、すべての手法において上位4位以内にランク付けされ、テスト可能性予測における関連性が明確になった。
  • WMC(クラスあたりの重み付きメソッド数)とNMC(メソッド呼び出し数)は、一貫して上位5位以内にランク付けされ、複雑さに基づくテスト可能性評価における役割が強調された。
  • 突然変異スコアをテスト有効性の代理指標として用いることは、交差検証および複数の評価指標を通じて検証され、モデルの信頼性が確保された。
  • 本研究では、コード品質メトリクスがテスト有効性に顕著な影響を与えることが確認され、開発者がテスト設計および保守性の向上に役立つ実用的洞察が得られた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。