A multi-label classification approach for detecting test smells over java']java projects

被引:5
作者
Hadj-Kacem, Mouna [1 ]
Bouassida, Nadia [1 ]
机构
[1] Sfax Univ, Mircl Lab, Sfax, Tunisia
关键词
Test smells; Benchmark of test smells; Multi -label classification; Problem; -transformation; Ensemble method; CODE;
D O I
10.1016/j.jksuci.2021.10.008
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Software testing plays a critical role in the development and the assurance of the software quality. However, the quality of the code that is responsible for testing may, itself, be affected by poor design choices, known as test smells. In the literature, test smells may be interpreted differently by developers, which in turn can lead to different detection tools and results. In our work, we have selected the mostly commonly used detection tools and have investigated their overall agreement across different projects and different test smells. The found results were evaluated according to the average level of agreement, where we observed a definite disagreement between the tools. To overcome this gap of misinterpreta-tion, we propose in this paper a multi-label classification approach to detect test smells based on a deep representation of the test code. We conducted our experiments using 4 problem-transformation tech-niques and 4 ensemble techniques. To evaluate our experimental results, we built a benchmark using a tool-based approach for labelling and made it publicly available. Binary Relevance and RAkEL are found to be the best multi-label techniques that achieve high performance results.(c) 2021 The Authors. Published by Elsevier B.V. on behalf of King Saud University. This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/).
引用
收藏
页码:8692 / 8701
页数:10
相关论文
共 37 条
[1]   Test Smell Detection Tools: A Systematic Mapping Study [J].
Aljedaani, Wajdi ;
Peruma, Anthony ;
Aljohani, Ahmed ;
Alotaibi, Mazen ;
Mkaouer, Mohamed Wiem ;
Ouni, Ali ;
Newman, Christian D. ;
Ghallab, Abdullatif ;
Ludi, Stephanie .
PROCEEDINGS OF EVALUATION AND ASSESSMENT IN SOFTWARE ENGINEERING (EASE 2021), 2021, :170-180
[2]   Are test smells really harmful? An empirical study [J].
Bavota, Gabriele ;
Qusef, Abdallah ;
Oliveto, Rocco ;
De Lucia, Andrea ;
Binkley, Dave .
EMPIRICAL SOFTWARE ENGINEERING, 2015, 20 (04) :1052-1094
[3]  
Bavota G, 2012, 2012 28TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM), P56, DOI 10.1109/ICSM.2012.6405253
[4]  
Breugelmans M., 2008, INT WORKSH ADV SOFTW
[5]   Addressing imbalance in multilabel classification: Measures and random resampling algorithms [J].
Charte, Francisco ;
Rivera, Antonio J. ;
del Jesus, Maria J. ;
Herrera, Francisco .
NEUROCOMPUTING, 2015, 163 :3-16
[6]  
Deursen A. V., 2001, P 2 INT C EXTR PROGR, P92
[7]   Oracles of Bad Smells - a Systematic Literature Review [J].
Ferreira Trindade, Rafael Prates ;
da Silva Bigonha, Mariza Andrade ;
Marques Ferreira, Kecia Aline .
34TH BRAZILIAN SYMPOSIUM ON SOFTWARE ENGINEERING, SBES 2020, 2020, :62-71
[8]   Comparing and experimenting machine learning techniques for code smell detection [J].
Fontana, Francesca Arcelli ;
Mantyla, Mika V. ;
Zanoni, Marco ;
Marino, Alessandro .
EMPIRICAL SOFTWARE ENGINEERING, 2016, 21 (03) :1143-1191
[9]  
Fowler M., 1999, Refactoring: Improving the Design of Existing Code
[10]   Smells in software test code: A survey of knowledge in industry and academia [J].
Garousi, Vahid ;
Kucuk, Baris .
JOURNAL OF SYSTEMS AND SOFTWARE, 2018, 138 :52-81