Siirry päänavigointiin Siirry hakuun Siirry pääsisältöön

Machine learning-based test smell detection

  • Valeria Pontillo*
  • , Dario Amoroso d’Aragona
  • , Fabiano Pecorelli
  • , Dario Di Nucci
  • , Filomena Ferrucci
  • , Fabio Palomba
  • *Tämän työn vastaava kirjoittaja

Tutkimustuotos: ArtikkeliTieteellinenvertaisarvioitu

14 Sitaatiot (Scopus)
14 Lataukset (Pure)

Abstrakti

Test smells are symptoms of sub-optimal design choices adopted when developing test cases. Previous studies have proved their harmfulness for test code maintainability and effectiveness. Therefore, researchers have been proposing automated, heuristic-based techniques to detect them. However, the performance of these detectors is still limited and dependent on tunable thresholds. We design and experiment with a novel test smell detection approach based on machine learning to detect four test smells. First, we develop the largest dataset of manually-validated test smells to enable experimentation. Afterward, we train six machine learners and assess their capabilities in within- and cross-project scenarios. Finally, we compare the ML-based approach with state-of-the-art heuristic-based techniques. The key findings of the study report a negative result. The performance of the machine learning-based detector is significantly better than heuristic-based techniques, but none of the learners able to overcome an average F-Measure of 51%. We further elaborate and discuss the reasons behind this negative result through a qualitative investigation into the current issues and challenges that prevent the appropriate detection of test smells, which allowed us to catalog the next steps that the research community may pursue to improve test smell detection techniques.

AlkuperäiskieliEnglanti
Artikkeli55
JulkaisuEmpirical Software Engineering
Vuosikerta29
Numero2
DOI - pysyväislinkit
TilaJulkaistu - maalisk. 2024
OKM-julkaisutyyppiA1 Alkuperäisartikkeli tieteellisessä aikakauslehdessä

Rahoitus

Fabio gratefully acknowledges the support of the Swiss National Science Foundation through the SNF project No. PZ00P2_186090. In addition, the work has been partially supported by the EMELIOT national research project, which the MUR has funded under the PRIN 2020 program (Contract 2020W3A5FY). Open access funding provided by Università degli Studi di Salerno within the CRUI-CARE Agreement.

RahoittajatRahoittajan numero
Schweizerischer Nationalfonds zur Förderung der Wissenschaftlichen Forschung2020W3A5FY, PZ00P2_186090
Università degli Studi di Salerno

    Julkaisufoorumi-taso

    • Jufo-taso 3

    !!ASJC Scopus subject areas

    • Software

    Sormenjälki

    Sukella tutkimusaiheisiin 'Machine learning-based test smell detection'. Ne muodostavat yhdessä ainutlaatuisen sormenjäljen.

    Siteeraa tätä