Result: Metaheuristic approach for constructing functional test-suites
Information Technology Laboratory, CINVESTAV-TAMAULIPAS, Ciudad Victoria, Tamps, Mexico
Instituto de Instrumentación para Imagen Molecular (13M), Centro mixto CSIC - Universitat Politècnica de València ― CIEMAT, Camino de Vera s/n, Valencia 46022, Spain
CC BY 4.0
Sauf mention contraire ci-dessus, le contenu de cette notice bibliographique peut être utilisé dans le cadre d’une licence CC BY 4.0 Inist-CNRS / Unless otherwise stated above, the content of this bibliographic record may be used under a CC BY 4.0 licence by Inist-CNRS / A menos que se haya señalado antes, el contenido de este registro bibliográfico puede ser utilizado al amparo de una licencia CC BY 4.0 Inist-CNRS
Further Information
Today, software systems are complex and have many possible configurations. A deficient software testing process often leads to unfortunate consequences, including data losses, large economic losses, security breaches, and even bodily harm. Thus, the problem of performing effective and economical testing is a key issue. Combinatorial testing is a method that can reduce cost and increase the effectiveness of software testing for many applications. It is based on constructing economical sized test-suites that provide coverage of the most prevalent configurations. Mixed covering arrays (MCAs) are combinatorial structures that can be used to represent these test-suites. MCAs are combinatorial objects represented as matrices having a test case per row. MCAs are small, in comparison to an exhaustive approach, and guarantee a level of interaction coverage among the parameters involved. This study presents a metaheuristic approach based on a simulated annealing (SA) algorithm for constructing MCAs. This algorithm incorporates several distinguishing features, including an efficient heuristic to generate good quality initial solutions, and a compound neighbourhood function that combines two carefully designed neighbourhood functions. The experimental design involved a benchmark reported in the literature and two real cases of software components. The experimental evidence showed that the SA algorithm equals or improves the obtained results by other approaches reported in the literature, and also finds the optimal solution in some of the solved cases.