Branch coverage test case generation using genetic algorithm and harmony search

Due to the vital role of software in the modern world, there is a great demand for reliability, and it can be achieved through the process of testing. White-Box testing is one of the testing methods that aims to uncover errors of coding by investigating the internal structure of the software. Moreov...

Full description

Saved in:
Bibliographic Details
Main Author: Abedinpourshotorban, Hosein
Format: Thesis
Language:English
Published: 2015
Subjects:
Online Access:http://eprints.utm.my/id/eprint/53579/25/HoseinAbedinpourshotorbanMFC2015.pdf
http://eprints.utm.my/id/eprint/53579/
http://dms.library.utm.my:8080/vital/access/manager/Repository/vital:84058
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Universiti Teknologi Malaysia
Language: English
id my.utm.53579
record_format eprints
spelling my.utm.535792020-07-21T08:16:33Z http://eprints.utm.my/id/eprint/53579/ Branch coverage test case generation using genetic algorithm and harmony search Abedinpourshotorban, Hosein QA75 Electronic computers. Computer science Due to the vital role of software in the modern world, there is a great demand for reliability, and it can be achieved through the process of testing. White-Box testing is one of the testing methods that aims to uncover errors of coding by investigating the internal structure of the software. Moreover, generation of test cases for White-Box testing of software can be done manually or automatically. However, due to possible mistakes and expenses of manual test case generation, trend is toward making this activity automatic. So far, proposed techniques for automatic test case generation are mostly based on Genetic Algorithm (GA). However, existing GA techniques are quite slow and unable to achieve full coverage when it comes to test case generation for complex software with a wide range of inputs. Thus, in this research an improved fitness function is proposed based on Control Dependence Graph (CDG) and branch distance that can improve the speed and coverage of test cases generation by the means of evolutionary algorithms like GA. Also, a GA-based branch coverage test case generation technique is proposed in this research that takes advantage of our proposed fitness function, and comparison results based on two benchmark case studies show that our proposed technique outperforms the original CDG technique in speed and coverage of test case generation. In addition, we evaluated our proposed fitness function with harmony search algorithm (HS), which is a more recent optimization algorithm compared to GA, and find out that HS outperforms GA in speed of test case generation for branch coverage of software code. 2015-01 Thesis NonPeerReviewed application/pdf en http://eprints.utm.my/id/eprint/53579/25/HoseinAbedinpourshotorbanMFC2015.pdf Abedinpourshotorban, Hosein (2015) Branch coverage test case generation using genetic algorithm and harmony search. Masters thesis, Universiti Teknologi Malaysia, Faculty of Computing. http://dms.library.utm.my:8080/vital/access/manager/Repository/vital:84058
institution Universiti Teknologi Malaysia
building UTM Library
collection Institutional Repository
continent Asia
country Malaysia
content_provider Universiti Teknologi Malaysia
content_source UTM Institutional Repository
url_provider http://eprints.utm.my/
language English
topic QA75 Electronic computers. Computer science
spellingShingle QA75 Electronic computers. Computer science
Abedinpourshotorban, Hosein
Branch coverage test case generation using genetic algorithm and harmony search
description Due to the vital role of software in the modern world, there is a great demand for reliability, and it can be achieved through the process of testing. White-Box testing is one of the testing methods that aims to uncover errors of coding by investigating the internal structure of the software. Moreover, generation of test cases for White-Box testing of software can be done manually or automatically. However, due to possible mistakes and expenses of manual test case generation, trend is toward making this activity automatic. So far, proposed techniques for automatic test case generation are mostly based on Genetic Algorithm (GA). However, existing GA techniques are quite slow and unable to achieve full coverage when it comes to test case generation for complex software with a wide range of inputs. Thus, in this research an improved fitness function is proposed based on Control Dependence Graph (CDG) and branch distance that can improve the speed and coverage of test cases generation by the means of evolutionary algorithms like GA. Also, a GA-based branch coverage test case generation technique is proposed in this research that takes advantage of our proposed fitness function, and comparison results based on two benchmark case studies show that our proposed technique outperforms the original CDG technique in speed and coverage of test case generation. In addition, we evaluated our proposed fitness function with harmony search algorithm (HS), which is a more recent optimization algorithm compared to GA, and find out that HS outperforms GA in speed of test case generation for branch coverage of software code.
format Thesis
author Abedinpourshotorban, Hosein
author_facet Abedinpourshotorban, Hosein
author_sort Abedinpourshotorban, Hosein
title Branch coverage test case generation using genetic algorithm and harmony search
title_short Branch coverage test case generation using genetic algorithm and harmony search
title_full Branch coverage test case generation using genetic algorithm and harmony search
title_fullStr Branch coverage test case generation using genetic algorithm and harmony search
title_full_unstemmed Branch coverage test case generation using genetic algorithm and harmony search
title_sort branch coverage test case generation using genetic algorithm and harmony search
publishDate 2015
url http://eprints.utm.my/id/eprint/53579/25/HoseinAbedinpourshotorbanMFC2015.pdf
http://eprints.utm.my/id/eprint/53579/
http://dms.library.utm.my:8080/vital/access/manager/Repository/vital:84058
_version_ 1674066183289044992