Vol.67, No.1, 2021, pp.1225-1239, doi:10.32604/cmc.2021.014699
OPEN ACCESS
ARTICLE
Optimal Reordering Trace Files for Improving Software Testing Suitcase
  • Yingfu Cai1, Sultan Noman Qasem2,3, Harish Garg4, Hamïd Parvïn5,6,7,*, Kim-Hung Pho8, Zulkefli Mansor9
1 School of Measurement and Communication, Harbin University of Science & Technology, Harbin, China
2 Computer Science Department, College of Computer and Information Sciences,AlImam Mohammad Ibn Saud Islamic University (IMSIU), Riyadh, Saudi Arabia
3 Department of Computer Science, Faculty of Applied Science, Taiz University, Taiz, Yemen
4 School of Mathematics, Thapar Institute of Engineering and Technology, Deemed University, Patiala, 147004, India
5 Institute of Research and Development, Duy Tan University, Da Nang, 550000, Vietnam
6 Faculty of Information Technology, Duy Tan University, Da Nang, 550000, Vietnam
7 Department of Computer Science, Nourabad Mamasani Branch, Islamic Azad University, Mamasani, Iran
8 Fractional Calculus, Optimization and Algebra Research Group, Faculty of Mathematics and Statistics, Ton Duc Thang University, Ho Chi Minh City, Vietnam
9 Fakulti Teknologi dan Sains Maklumat, Universiti Kebangsan Malaysia, UKM Bangi, Selangor, 43600, Malaysia
* Corresponding Author: Hamïd Parvïn. Email:
(This article belongs to this Special Issue: Emerging Computational Intelligence Technologies for Software Engineering: Paradigms, Principles and Applications)
Received 10 October 2020; Accepted 16 November 2020; Issue published 12 January 2021
Abstract
An invariant can be described as an essential relationship between program variables. The invariants are very useful in software checking and verification. The tools that are used to detect invariants are invariant detectors. There are two types of invariant detectors: dynamic invariant detectors and static invariant detectors. Daikon software is an available computer program that implements a special case of a dynamic invariant detection algorithm. Daikon proposes a dynamic invariant detection algorithm based on several runs of the tested program; then, it gathers the values of its variables, and finally, it detects relationships between the variables based on a simple statistical analysis. This method has some drawbacks. One of its biggest drawbacks is its overwhelming time order. It is observed that the runtime for the Daikon invariant detection tool is dependent on the ordering of traces in the trace file. A mechanism is proposed in order to reduce differences in adjacent trace files. It is done by applying some special techniques of mutation/crossover in genetic algorithm (GA). An experiment is run to assess the benefits of this approach. Experimental findings reveal that the runtime of the proposed dynamic invariant detection algorithm is superior to the main approach with respect to these improvements.
Keywords
Dynamic invariant detection; software testing; genetic algorithm
Cite This Article
Y. Cai, S. N. Qasem, H. Garg, H. Parvïn, K. Pho et al., "Optimal reordering trace files for improving software testing suitcase," Computers, Materials & Continua, vol. 67, no.1, pp. 1225–1239, 2021.
This work is licensed under a Creative Commons Attribution 4.0 International License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.