Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm Approach

The cost of software testing is a significant aspect of the software development life cycle, typically accounting for half of the total software production cost. Due to the large number of tests, it is impractical to perform a complete test of a system under test. Combinatorial testing is employed t...

Full description

Saved in:
Bibliographic Details
Main Authors: Sajad Esfandyari, Davar Giveki, Amir Rastegarnia, Ali Farzamnia, Hua Zheng
Format: Article
Language:English
Published: IEEE 2025-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/11075746/
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1850067644943695872
author Sajad Esfandyari
Davar Giveki
Amir Rastegarnia
Ali Farzamnia
Hua Zheng
author_facet Sajad Esfandyari
Davar Giveki
Amir Rastegarnia
Ali Farzamnia
Hua Zheng
author_sort Sajad Esfandyari
collection DOAJ
description The cost of software testing is a significant aspect of the software development life cycle, typically accounting for half of the total software production cost. Due to the large number of tests, it is impractical to perform a complete test of a system under test. Combinatorial testing is employed to identify errors that arise from the interaction among subsystems, with covering arrays being the most crucial type of combinatorial testing. Covering arrays consider parameter combinations using the t-way strategy. The goal is to reduce the number of test cases while ensuring adequate coverage. Fewer test cases result in greater efficiency, and less time spent generating the test suite leads to more effective testing. Various solutions have been proposed, with metaheuristic algorithms playing a vital role. Furthermore, solutions have been developed to automatically generate parameters and their corresponding values by utilizing a model of the system under test. In this paper, our objective is to employ model-based solutions for the automatic generation of a covering array. Specifically, we integrate the GROOVE model checker with a combination of Biogeography-Based Optimization (BBO) and Genetic Algorithm (GA) to enhance the efficiency and accuracy of the test suite generation. The GROOVE model checker extracts parameters and their values, which are then optimized by the BBO and GA algorithms to generate a minimal and effective test suite. The evaluation results show that our proposed solution outperforms existing algorithms, achieving higher efficiency and accuracy in test generation. This research highlights the novel integration of GROOVE with BBO and GA, contributing to the advancement of combinatorial testing techniques.
format Article
id doaj-art-5ffe539952bb41fba47e510a1386ec54
institution DOAJ
issn 2169-3536
language English
publishDate 2025-01-01
publisher IEEE
record_format Article
series IEEE Access
spelling doaj-art-5ffe539952bb41fba47e510a1386ec542025-08-20T02:48:16ZengIEEEIEEE Access2169-35362025-01-011312280412282110.1109/ACCESS.2025.358720211075746Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm ApproachSajad Esfandyari0Davar Giveki1https://orcid.org/0000-0002-7288-8112Amir Rastegarnia2https://orcid.org/0000-0003-4371-310XAli Farzamnia3https://orcid.org/0000-0001-8618-7256Hua Zheng4https://orcid.org/0009-0001-4546-2968Department of Computer Engineering, Faculty of Engineering, Malayer University, Malayer, IranDepartment of Computer Engineering, Faculty of Engineering, Malayer University, Malayer, IranDepartment of Electrical Engineering, Faculty of Engineering, Malayer University, Malayer, IranSchool of Computing and Engineering, University of Huddersfield, Huddersfield, U.K.College of Photonic and Electronic Engineering, Fujian Normal University, Fuzhou, ChinaThe cost of software testing is a significant aspect of the software development life cycle, typically accounting for half of the total software production cost. Due to the large number of tests, it is impractical to perform a complete test of a system under test. Combinatorial testing is employed to identify errors that arise from the interaction among subsystems, with covering arrays being the most crucial type of combinatorial testing. Covering arrays consider parameter combinations using the t-way strategy. The goal is to reduce the number of test cases while ensuring adequate coverage. Fewer test cases result in greater efficiency, and less time spent generating the test suite leads to more effective testing. Various solutions have been proposed, with metaheuristic algorithms playing a vital role. Furthermore, solutions have been developed to automatically generate parameters and their corresponding values by utilizing a model of the system under test. In this paper, our objective is to employ model-based solutions for the automatic generation of a covering array. Specifically, we integrate the GROOVE model checker with a combination of Biogeography-Based Optimization (BBO) and Genetic Algorithm (GA) to enhance the efficiency and accuracy of the test suite generation. The GROOVE model checker extracts parameters and their values, which are then optimized by the BBO and GA algorithms to generate a minimal and effective test suite. The evaluation results show that our proposed solution outperforms existing algorithms, achieving higher efficiency and accuracy in test generation. This research highlights the novel integration of GROOVE with BBO and GA, contributing to the advancement of combinatorial testing techniques.https://ieeexplore.ieee.org/document/11075746/Covering array (CA)model checkingbiogeography based optimization (BBO)genetic algorithm (GA)
spellingShingle Sajad Esfandyari
Davar Giveki
Amir Rastegarnia
Ali Farzamnia
Hua Zheng
Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm Approach
IEEE Access
Covering array (CA)
model checking
biogeography based optimization (BBO)
genetic algorithm (GA)
title Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm Approach
title_full Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm Approach
title_fullStr Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm Approach
title_full_unstemmed Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm Approach
title_short Efficiently Automating Covering Array Generation: A Model Checking and Metaheuristic Algorithm Approach
title_sort efficiently automating covering array generation a model checking and metaheuristic algorithm approach
topic Covering array (CA)
model checking
biogeography based optimization (BBO)
genetic algorithm (GA)
url https://ieeexplore.ieee.org/document/11075746/
work_keys_str_mv AT sajadesfandyari efficientlyautomatingcoveringarraygenerationamodelcheckingandmetaheuristicalgorithmapproach
AT davargiveki efficientlyautomatingcoveringarraygenerationamodelcheckingandmetaheuristicalgorithmapproach
AT amirrastegarnia efficientlyautomatingcoveringarraygenerationamodelcheckingandmetaheuristicalgorithmapproach
AT alifarzamnia efficientlyautomatingcoveringarraygenerationamodelcheckingandmetaheuristicalgorithmapproach
AT huazheng efficientlyautomatingcoveringarraygenerationamodelcheckingandmetaheuristicalgorithmapproach