ABSTRACT
Software test case selection is committed to select the fewest test cases from test suites to perform a complete test at the least cost. Machine learning and multi-objective optimization techniques have developed rapidly in recent years, and they have been successfully applied to test case selection. In this paper, we present a method called DB-NSGA2, which uses the density clustering algorithm in machine learning combined with the non-dominated ranking algorithm (NSGA2) for test case selection, which can better select the test cases required for testing. In particular, we apply some of the clustering results generated by the clustering algorithm to the crossover and mutation operations of the NSGA2 to improve diversity progeny populations and ensure the transmission of good individuals. Extensive experiments show that the test cases selected by our method can produce a better set of Pareto solutions and can detect more faults at a lower cost than other methods.
- Anne Auger, Johannes Bader, Dimo Brockhoff, and Eckart Zitzler. 2009. Theory of the hypervolume indicator: optimal μ-distributions and the choice of the reference point. In Foundations of Genetic Algorithms, 10th ACM SIGEVO International Workshop, FOGA 2009, Orlando, Forida, USA, January 9-11, 2009, Proceedings, Ivan I. Garibay, Thomas Jansen, R. Paul Wiegand, and Annie S. Wu (Eds.). ACM, 87–102. https://doi.org/10.1145/1527125.1527138Google ScholarDigital Library
- Peter A.N. Bosman, Ngoc Hoang Luong, and Dirk Thierens. 2016. Expanding from Discrete Cartesian to Permutation Gene-Pool Optimal Mixing Evolutionary Algorithms. Association for Computing Machinery, New York, NY, USA. https://doi.org/10.1145/2908812.2908917Google ScholarDigital Library
- Heleno de S. Campos Junior, Marco Antônio P. Araújo, José Maria N. David, Regina Braga, Fernanda Campos, and Victor Ströele. 2017. Test Case Prioritization: A Systematic Review and Mapping of the Literature. Association for Computing Machinery, New York, NY, USA. https://doi.org/10.1145/3131151.3131170Google ScholarDigital Library
- Kalyanmoy Deb, Amrit Pratap, Sameer Agarwal, and T. Meyarivan. 2002. A fast and elitist multiobjective genetic algorithm: NSGA-II, IEEE Trans. on Evol. IEEE Transactions on Evolutionary Computation - TEC 6 (01 2002).Google Scholar
- Martin Ester, Hans-Peter Kriegel, Joerg Sander, and Xiaowei Xu. 1996. A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise. KDD 96, 226–231.Google ScholarDigital Library
- Gordon Fraser and Andrea Arcuri. 2013. Whole Test Suite Generation. IEEE Transactions on Software Engineering 39, 2 (2013), 276–291. https://doi.org/10.1109/TSE.2012.14Google ScholarDigital Library
- Junhao Gan and Yufei Tao. 2015. DBSCAN Revisited. 519–530. https://doi.org/10.1145/2723372.2737792Google ScholarDigital Library
- Arthur Guijt, Ngoc Hoang Luong, Peter A.N. Bosman, and Mathijs de Weerdt. 2022. On the impact of linkage learning, gene-pool optimal mixing, and non-redundant encoding on permutation optimization. Swarm and Evolutionary Computation 70 (2022), 101044. https://doi.org/10.1016/j.swevo.2022.101044Google ScholarCross Ref
- M.J. Harrold, R. Gupta, and M.L. Soffa. 1990. A methodology for controlling the size of a test suite. In Proceedings. Conference on Software Maintenance 1990. 302–310. https://doi.org/10.1109/ICSM.1990.131378Google ScholarCross Ref
- Hisao Ishibuchi, Lie Meng Pang, and Ke Shang. 2022. Difficulties in Fair Performance Comparison of Multi-Objective Evolutionary Algorithms [Research Frontier]. IEEE Comput. Intell. Mag. 17, 1 (2022), 86–101. https://doi.org/10.1109/MCI.2021.3129961Google ScholarDigital Library
- Bo Jiang, Zhenyu Zhang, W. K. Chan, and T. H. Tse. 2009. Adaptive Random Test Case Prioritization. In 2009 IEEE/ACM International Conference on Automated Software Engineering. 233–244. https://doi.org/10.1109/ASE.2009.77Google ScholarDigital Library
- Rafaqat Kazmi, Dayang Jawawi, Radziah Mohamad, and Imran Ghani. 2017. Effective Regression Test Case Selection: A Systematic Literature Review. Comput. Surveys 50 (05 2017), 1–32. https://doi.org/10.1145/3057269Google ScholarDigital Library
- Onapa Limwattanapibool and Somjit Arch-int. 2017. Determination of the appropriate parameters for K-means clustering using selection of region clusters based on density DBSCAN (SRCD-DBSCAN). Expert Systems 34 (05 2017), e12204. https://doi.org/10.1111/exsy.12204Google ScholarCross Ref
- Camila Maia, Brito Maia, Rafael Carmo, Gustavo Augusto, and Lima Campos. 2011. A multi-objective approach for the regression test case selection problem. (05 2011).Google Scholar
- Mitchell Olsthoorn and Annibale Panichella. 2021. Multi-objective Test Case Selection Through Linkage Learning-Based Crossover. In Search-Based Software Engineering, Una-May O’Reilly and Xavier Devroey (Eds.). Springer International Publishing, Cham, 87–102.Google Scholar
- Rongqi Pan, Mojtaba Bagherzadeh, Taher A. Ghaleb, and Lionel Briand. 2022. Test case selection and prioritization using machine learning: a systematic literature review. Empirical Software Engineering 27, 2 (2022), 1–43.Google ScholarDigital Library
- Annibale Panichella, Rocco Oliveto, Massimiliano Di Penta, and Andrea De Lucia. 2015. Improving Multi-Objective Test Case Selection by Injecting Diversity in Genetic Algorithms. IEEE Transactions on Software Engineering 41, 4 (2015), 358–383. https://doi.org/10.1109/TSE.2014.2364175Google ScholarDigital Library
- Conor Ryan, Meghana Kshirsagar, Krishn Gupt, Lukas Rosenbauer, and Joseph Sullivan. 2021. Hierarchical Clustering Driven Test Case Selection in Digital Circuits. 589–596. https://doi.org/10.5220/0010605805890596Google ScholarCross Ref
- Erich Schubert, Jörg Sander, Martin Ester, Hans-Peter Kriegel, and Xiaowei Xu. 2017. DBSCAN Revisited, Revisited: Why and How You Should (Still) Use DBSCAN. ACM Trans. Database Syst. 42, 3 (2017), 19:1–19:21. https://doi.org/10.1145/3068335Google ScholarDigital Library
- Helge Spieker, Arnaud Gotlieb, Dusica Marijan, and Morten Mossige. 2017. Reinforcement Learning for Automatic Test Case Prioritization and Selection in Continuous Integration. https://doi.org/10.1145/3092703.3092709Google ScholarDigital Library
- Dirk Thierens and Peter Bosman. 2011. Optimal mixing evolutionary algorithms. IEEE/ACM Transactions on Computational Biology and Bioinformatics - TCBB, 617–624. https://doi.org/10.1145/2001576.2001661Google ScholarDigital Library
- Dirk Thierens and Peter Bosman. 2011. Optimal mixing evolutionary algorithms. IEEE/ACM Transactions on Computational Biology and Bioinformatics - TCBB, 617–624. https://doi.org/10.1145/2001576.2001661Google ScholarDigital Library
- Shin Yoo and Mark Harman. 2007. Pareto Efficient Multi-Objective Test Case Selection. Association for Computing Machinery, New York, NY, USA. https://doi.org/10.1145/1273463.1273483Google ScholarDigital Library
- Shin Yoo and Mark Harman. 2010. Using hybrid algorithm for Pareto efficient multi-objective test suite minimisation. Journal of Systems and Software 83, 4 (2010), 689–701. https://doi.org/10.1016/j.jss.2009.11.706Google ScholarDigital Library
- Lu Zhu, Chongming Bao, Chongyun Wang, Jiang Zhu, Lihua Zhou, and Bing Kong. 2018. Improvement of DBSCAN Algorithm Based on Adaptive Eps Parameter Estimation. ACAI 2018: Proceedings of the 2018 International Conference on Algorithms, Computing and Artificial Intelligence, 1–7. https://doi.org/10.1145/3302425.3302493Google ScholarDigital Library
- E. Zitzler, L. Thiele, M. Laumanns, C.M. Fonseca, and V.G. da Fonseca. 2003. Performance assessment of multiobjective optimizers: an analysis and review. IEEE Transactions on Evolutionary Computation 7, 2(2003), 117–132. https://doi.org/10.1109/TEVC.2003.810758Google ScholarDigital Library
Index Terms
- Multi-objective software test case selection based on density analysis
Recommendations
Multi-objective Test Case Selection Through Linkage Learning-Based Crossover
Search-Based Software EngineeringAbstractTest Case Selection (TCS) aims to select a subset of the test suite to run for regression testing. The selection is typically based on past coverage and execution cost data. Researchers have successfully used multi-objective evolutionary ...
An analysis on recombination in multi-objective evolutionary optimization
Evolutionary algorithms (EAs) are increasingly popular approaches to multi-objective optimization. One of their significant advantages is that they can directly optimize the Pareto front by evolving a population of solutions, where the recombination (...
An analysis on recombination in multi-objective evolutionary optimization
GECCO '11: Proceedings of the 13th annual conference on Genetic and evolutionary computationRecombination (or called crossover) operators are a kind of characterizing feature of evolutionary algorithms (EAs). The usefulness of recombination operators has been verified empirically in many practical applications, and has also been theoretically ...
Comments