Background: Regression testing is very important stage of software maintenance and
evolution phase. The software keeps on updating and to preserve the software quality, it needs to be
retested every time it is updated. Due to limited resources, complete testing of the software becomes
tedious task. The probable solution to this problem is to execute those test cases first that are more
important prior to less important test cases.
Objective: Optimization methods need to be acquired for efficient test case prioritization in minimum
time, while maintaining the quality of the software. Various nature-inspired algorithms like
genetic algorithm, particle swarm optimization and ant colony optimization, etc. have been applied
for prioritizing test cases. In this paper, we have applied a relatively new nature-inspired optimization
method, namely, Bat algorithm that utilizes the echolocation, loudness and pulse emission rate
of bats in prioritizing the test cases.
Methods: The proposed algorithm is experimented on sample case study of timetable management
system and evaluated with the help of popular evaluation metric Average Percentage of Fault Detection.
Results: Results have been compared with the baseline approaches i.e. untreated, random and reverse
prioritization and well-established optimization method i.e. genetic algorithm and we have
found a considerable increase in the value of evaluation metric.
Conclusion: This preliminary study shows that the bat algorithm have great potential to solve test
case prioritization problems.