0% found this document useful (0 votes)
27 views10 pages

28 - Regression Test Case Optimization Using Honey Bee Mating Optimization Algorithm With Fuzzy Rule Base

The paper presents a regression test case optimization technique that utilizes the Honey Bee Mating Optimization (HBMO) algorithm combined with a fuzzy rule base to enhance software maintenance processes. By selecting essential test cases from an existing suite, the proposed method aims to reduce the test suite size by approximately 50%, thereby optimizing the overall regression testing process. The algorithm emphasizes the importance of fault coverage and execution time in selecting the most effective test cases for validating software modifications.

Uploaded by

satishc81ml
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views10 pages

28 - Regression Test Case Optimization Using Honey Bee Mating Optimization Algorithm With Fuzzy Rule Base

The paper presents a regression test case optimization technique that utilizes the Honey Bee Mating Optimization (HBMO) algorithm combined with a fuzzy rule base to enhance software maintenance processes. By selecting essential test cases from an existing suite, the proposed method aims to reduce the test suite size by approximately 50%, thereby optimizing the overall regression testing process. The algorithm emphasizes the importance of fault coverage and execution time in selecting the most effective test cases for validating software modifications.

Uploaded by

satishc81ml
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/336133351

Regression Test Case Optimization Using Honey Bee Mating Optimization


Algorithm with Fuzzy Rule Base

Article in World Applied Sciences Journal · March 2014


DOI: 10.5829/idosi.wasj.2014.31.04.1336

CITATIONS READS
3 98

2 authors:

Deepak Rai Kirti Seth


National Institute of Technology Patna INHA university in Tashkent, Uzbekistan
11 PUBLICATIONS 29 CITATIONS 49 PUBLICATIONS 248 CITATIONS

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Currently working on Reliability of SOA View project

All content following this page was uploaded by Deepak Rai on 30 September 2019.

The user has requested enhancement of the downloaded file.


World Applied Sciences Journal 31 (4): 654-662, 2014
ISSN 1818-4952
© IDOSI Publications, 2014
DOI: 10.5829/idosi.wasj.2014.31.04.1336

Regression Test Case Optimization Using Honey Bee Mating


Optimization Algorithm with Fuzzy Rule Base
1
Deepak Rai and 2Kirti Tyagi

M. Tech Computer Science and Engg,


1

Ajay Kumar Garg Engineering College, Ghaziabad, UP, India


2
Department of Computer Science and Engg,
Ajay Kumar Garg Engineering College, Ghaziabad, UP, India

Submitted: Oct 9, 2013; Accepted: Feb 27, 2014; Published: Mar 12, 2014
Abstract: Maintenance of the software is concerned with the changes and modifications implemented to the
software. It needs to be validated that the modifications has not led to the degradation in the quality of the
software. Software regression testing is required to instill confidence that changes are valid. Regression testing
is very expensive. It requires the optimization of regression test cases. Recently, evolutionary and meta-
heuristic algorithms are coming into existence as search and optimization tools. This paper proposes a
regression test case optimization technique based on honey bee mating optimization and fuzzy rule base, which
reduces the size of the test suite by selecting the test cases from the existing test suite. The test cases which
are necessary for validating the recent changes in the software and have the ability to find the faults and cover
maximum coding under testing in minimum time are selected. An algorithm is designed which takes as input
the test suite containing several test cases and based on their execution time and fault coverage, reduces the
number of test cases. The test suite is reduced by 50% which optimizes the overall regression testing process.
The proposed algorithm reduces the test suite data by approximately 50%. Although the percentage reduction
is found little bit low in comparison to existing algorithm but the overall algorithm is found efficient as it
provides an authentic way of selecting test cases using fuzzy rule base.

Key words: Software testing Regression testing Test cases Honey bee mating Fuzzy logic Inference
system Optimization.

INTRODUCTION adversely affected unchanged portion of the software.


The dominant strategy for performing the RT is to rerun
Maintenance is the common term concerned with the the test cases. Test cases are set of conditions under
deterioration of the system because of its usage and age. which a tester determines whether software is working
However, this is not true for the software, because correctly or not. RT is expensive, it accounts for almost
software do not deteriorate with the passage of time and half of the total software maintenance cost [1]. Running all
usage. Software maintenance is mainly concerned with the test cases requires a large amount of time and effort.
the modifications and changes done to the software by Report shows that it takes 1000 machine hours to execute
the changing user needs and adaptation to the approximately 30,000 test cases and 100 of man hours for
changed environment with the passage of time. Software monitoring the process of RT [2]. This sets a requirement
maintenance activity needs to validate that the of optimizing the regression test cases.
modifications has not led to degradation of software Optimization tends to provide the best result with
quality. This requires software regression testing (RT), least investment. The classical methods and techniques
which is performed on the modified software to instill of solving the optimization problems come up with
confidence that changes are correct and have not exponential computational complexities as one of their

Corresponding Author: Deepak Rai, M. Tech Computer Science and Engg, Ajay Kumar Garg Engineering College,
Ghaziabad, UP, India.
654
World Appl. Sci. J., 31 (4): 654-662, 2014

solve have important counter parts in several engineering


areas in the real world. The requirements of SI like self
organization and division of labor features are strongly
and clearly seen in the honey bees. Honey bee comb
build-up and management is a classic example of
teamwork, experience, co-ordination and synchronization.
The way they build and maintain their comb is remarkable.
This gives rise to interest of using honey bees for
regression test case optimization. In this paper we attempt
to develop an algorithm for regression test case
optimization using honey bee mating optimization
(HBMO) and fuzzy logic.
This paper is organized in several sections. Section
2 describes the brief introduction of the related concepts.
Section 3 presents the background studies. Section 4
gives the proposed algorithm. Section 5 provides the
implementation of the algorithm. Section 6 gives the
results and Section 7 concludes the overall paper.

Brief Introduction of Related Concepts


Fig. 1: Categorization of Computational Intelligence Regression Testing and Test Case Optimization:
RT is the process of retesting the modified part of the
biggest drawback. This calls up for a new method to built software and ensuring that no new regression errors has
up, shedding away the shortcomings of the traditional been introduced into previously unmodified part of the
methods. Developing, working creatures and natural software [5]. It makes the maintenance work easy and less
science specially biology has shown themselves as one scary. There are several RT techniques namely retest all,
of the most peculiar source of inspiration for designing regression test selection (RTS), regression test
and inventing new system and algorithms [3]. The present prioritization (RTP) and hybrid approach [6] [7]. Retest all
scenario has marked the shift from the traditional to a new consumes excessive time and resources as compared to
species of optimization techniques. Recently, other techniques. RTS is an alternate approach but
evolutionary and meta-heuristic algorithms have been sometimes it omits some fault revealing test cases. So we
used as search and optimization tools. Computational use the hybrid approach by combining both RTS and
intelligence (CI) is the best known research field, which is RTP.
the study and design of intelligent agents. Intelligent
agent is a system that perceives its environment and then Honey Bee Mating Optimization (HBMO) Algorithm:
takes action to maximize the chance of its success. CI It is a meta-heuristic, which belongs to the class of
includes nature-inspired computational methodologies nature-inspired population-based algorithm. A natural
and approaches to address the complex problems of the system has become important source of ideas and models
real world applications [4]. It can be categorized as shown for development of various artificial systems. HBMO uses
in Fig. 1. a similarity among the way in which the bees in nature
Over the last couple of decades the behavior of look for mating and the way in which optimization
social insects, like ants and bees are being moed for the algorithms search for an optimum in combinatorial
purpose of searching and optimization problems. It has optimization problems. The major idea behind the HBMO
been the emerging area of swarm intelligence (SI). The is to find the best queen bee. Here, the best queen bee is
intelligence of these swarms lies in the networks of the bee with maximum fault coverage in minimum time,
interactions among the agents and between agents and which is decided based on the selection priority
environment. SI is becoming an important research area calculated by the designed fuzzy inference system (FIS).
for computer scientists, bioinformaticians, operational In order to discover superior and superior solutions,
researchers and many other disciplines. This is all honey bees cooperate with each other and exchange
because the problems that natural intelligent swarms can information. Via collective knowledge and giving out

655
World Appl. Sci. J., 31 (4): 654-662, 2014

information among themselves, the honey bee focus on very high. Both the system have different sets of rules,
more-promising areas and discard the solutions from less based on which they provide the outcomes. FIS1 provides
promising areas. the selection priority as very low, low, medium, high and
In this there is a single egg-laying long-lived queen, very high, whereas FIS2 provides the priority of the final
several thousands of drones responsible for mating with solution as low, medium, high and very high. The detailed
queen and 10 to 60 thousands of workers responsible for description is there in the implementation section.
local search and newly born broods care [8]. Queen is
specialized in egg-laying, she mate with different drones Background Study: Over the last one or two decades, the
during the mating flight far from the nest [9]. Queen mates emerging area for research of SI is, modeling the behavior
multiple times, but the drones only once. This makes the of social insects for searching and optimization problems.
bee mating the most spectacular mating among insects. Colonies of various social insects are characterized by
After mating, the queen bee returns to hive and starts swarm behavior. Studies are primarily based on the
breeding. The worker bees are chosen proportional to collective decision, pheromone laying, reproduction,
their fitness in order to improve the generated broods. mating, marriage, foraging behavior of the swarms. Most
The best brood is selected and the queen is replaced with closely studied social insects are bees. Mating behavior
the selected brood. Remaining broods are killed and a new of the bees is considered as one of the swarm based
mating flight begins until the stopping condition is approach for optimization.
reached or all mating flights are completed. Researches using honey bees started in late 90’s.
Honey bee behavior was used in the year 1996 by Y.
HBMO and Fuzzy Logic: In most of the models it is Yonezawas for giving an ecological algorithm for optimal
assumed that the problem data are deterministic ordering [13]. In the very next year in 1997, T. Sato and M.
quantities. But, here in this paper the choice of modeling Hagiwara had given a bee system for finding solution by
HBMO with fuzzy logic started from the assumption that a concentrated search [14]. Later, in 2001 H.A. Abbas
the perceptions of bees are “fuzzy”. In HBMO the used marriage in honey bee optimization approach and
selection of the queen bee and the best brood is uncertain proposed MBO algorithm [15]. Researches using honey
and not defined clearly. Hence, in order to improve this bees algorithms continued for different purposes like,
uncertainty we combine HBMO with fuzzy logic [10]. In fault-tolerant routing algorithms [16], dynamic transport
this, the bees use approximate reasoning and fuzzy rules planning [17], cluster analysis [18], numerical function
for their action and communication. During the selection optimization [19], for training feed forward neural network
of queen bee and the best brood the bees perceives the [20], scheduling problems in codesign [21], optimization
selection priority of other bees as ‘very low’, ‘low’, of fuzzy logic controller [22], resource allocation [23, 24],
‘medium’, ‘high’ and ‘very high’. Based on the values of optimization of neural network for identification of wood
number of faults covered and execution time the selection defects [25]. HBMO algorithm was first used by A. Afshar
priority of each bee is calculated with the designed FIS. et.al in 2007 [26]. This was applied to a single reservoir
optimization problem. Later, the same algorithm was
Fuzzy Inference System (FIS): It is a system that uses the applied to three benchmark mathematic problem by Bozor
theory of fuzzy set in order to map the inputs to outputs. Hadded et.al [27]. Recently, honey bee algorithms have
There are two FIS namely mamdani and sugeno [11]. found their utility in many fields of software engineering.
In this paper we have used mamdani style of inferencing. In the year 2011, Kilic et.al had proposed an approach
Here we have designed two inference systems namely using honey bees for automated software refactoring
FIS1 and FIS2. FIS1 gives the selection priority of the test problem [28]. Soimart et.al had applied bee algorithm for
cases [12]. FIS2 gives the priority of the subset of test the development of an automated MLD programming tool
cases in the final list. FIS1 take faults covered and [29]. Li and Ma had proposed honey bees based solution
remaining execution time (difference of given time method for logic reasoning [30].
constraint and execution time), as input. Whereas, FIS2 Research on regression testing spans a wide variety
takes one more parameter, number of test cases as its of topics. Recently, the optimization of size-constrained
input. FIS1 categorizes faults covered and remaining regression testing was taken up by Siavash Mirarab et.al
execution time as very low, low, medium, high and very in 2012 [31]. A safe regression testing based on the
high. FIS2 categorizes faults covered, remaining execution program dependence graph was given by Jianchum Xing
time and number of test cases as low, medium, high and et.al in the same year [32]. Honey bee algorithms have

656
World Appl. Sci. J., 31 (4): 654-662, 2014

also been used for the purpose of optimizing the software NF_Drone = Number_of_faults_covered by Drone_bee
test cases and the overall testing process. Mala et al had NF_Brood = Number_of_faults_covered by Brood_bee
applied bee algorithm for the purpose of software test FC_Queen = Faults_Covered by Queen_bee
suite optimization in 2010 [33]. In the very next year Adi FC_Drone = Faults_Covered by Drone_bee
Srikanth et.al had introduced a software test case FC_Brood = Faults_Covered by Brood_bee
optimization method using honey bees [34]. ET_Queen = Execution_time of Queen_bee
Researches for the purpose of regression testing ET_Drone = Execution_time of Drone_bee
using fuzzy logic are very scant. It started in the year 2005 ET_Brood = Execution_time of Brood_bee
when Xu, Gao et.al had firstly shown the application of RET_Brood = Remaining Execution_time of Brood_bee
fuzzy for regression testing [35]. Recently in 2012 and
2013 Ali M. Alakeel and H.B. Gupta proposed a technique Begin Main:
for the regression testing using fuzzy logic respectively Begin For:
[36] [37]. For( i=0; i<NT; i++)
RET_Ti = TC - ET_Ti
Proposed Algorithm: In this paper we have combined the P_Ti = FIS1 ( NF_Ti, RET_Ti )
fuzzy rule base with HBMO algorithm for the purpose of
regression test case optimization. In order to optimize the End for:
regression test cases the proposed technique selects the Each Test Case Is Assigned to Each Bee.
subset of test cases from the available test suite that Begin For:
covers all the faults in minimum execution time.
For( i=0; i<NT; i++ )
Input: < NT, NF, TC, S, Available, r = 0, c = 0 >
Queen = Best bee based on the priority.
Drones = Available - Queen
Where,
NT = Number_of_Test_case
Begin for:
NF = Number_of_faults
For( j=0; j<n; j++)
S = Test_suite = {Ti, FC_Ti, NF_Ti, ET_T ,i
FC_Brood[j] = FC_Queen || FC_Drone[j]
RET_Ti}; 1 <= i <= NT
NF_Brood[j] = Number of 1’s in FC_Brood[j]
TC = Time_Constraint
ET_Brood[j] = ET_Queen + ET_Drone[j]
Ti = ith Test_case; 1 <= i <= NT
RET_Brood[j] = TC - ET_Brood[j]
FC_Ti = Faults_covered by ith Test_case
NF_Ti = Number_of_faults_covered by ith
Test_case Begin if:
ET_Ti = Execution_time of ith Test_case if( NF_Brood[j] == NF &andET_Brood[j] <= TC )
RET_Ti = Remaining Execution_time of ith Test- then List[r][c] = Brood[j]
_case. c=c+1
Available = <T1, T2, T3,.......TNT> P_Brood[j] = FIS2(NF_Brood[j], RET_Brood[j])
List[r][c] = P_Brood[j]
Other Terms Used: r = r + 1, c = 0
Queen = Queen_bee
Drone = Drone_bee End if:
Brood = Brood_bee P_Brood[j] = FIS1 (NF_Brood[j], RET_Brood[j])
FIS = Fuzzy_Inference_System
P_Ti = Priority of ith Test_case End for:
List = Subset of Test_cases with all faults 6) Select Best Brood based on Priority
covered within TC 7) Begin if:
List_Final = List in order of decreasing priority.
n = |Available|= Number_of_Test_case in if (P_Selected_brood[j] > P_Queen)
Available then Queen = Selected_brood[j];
NF_Queen = Number_of_faults_covered by Drones = Drones - Queen;
Queen_bee Repeat from Step 5;

657
World Appl. Sci. J., 31 (4): 654-662, 2014

Based on these membership values the value of


End if: selection priority for each test case is calculated as:
8) Begin else:
Else goto previous stage and Repeat from Step 4 with next P_T1 = FIS1 (µFC_T1, µRET_T1) = FIS1 (0.4, 0.682) = 0.6545
Best Queen; Similarly, the membership values and the selection
End else: priority for all the test cases are calculated.
End for:
9) List_Final = List in order of priority. Test Cases µFC_Ti µRET_T1 P_Ti
End main: T1 0.4 0.682 0.6545
T2 0.2 0.864 0.4255
T3 0.3 0.773 0.3582
Implementation: The proposed algorithm has been T4 0.4 0.773 0.7179
implemented on several examples. One of the examples is T5 0.3 0.864 0.5033
T6 0.3 0.727 0.2832
explained here in detail. In this section we explain the
T7 0.3 0.864 0.5033
working of the proposed algorithm using the following T8 0.2 0.909 0.4255
example.
Consider a test suite having 8 test cases in it, Queen = T4 FC_Queen NF_Queen ET_Queen RET_Queen P_Queen
0001010110 4 5 17 0.7179
covering 10 faults, with the execution time for each test
case.
Let, the time constraint be 22. Drone = Available - Queen = < T1, T2, T3, T5, T6, T7, T8>

So, NT = 8; NF = 10; TC = 22. Drones = T1 T2 T3 T5 T6 T7 T8

Here, we are using binary representation for Mating flight begin with queen (T4). The queen will mate
representing the faults covered by the particular test case. with all the drones one by one and breed respectively in
1 at an index means that the test case detects the fault at the hive. The process of mating is as follows:
that index and 0 for vice-versa. Like, if test case T1 covers
faults F1, F4, F7 and F9. Then we will represent it as FC_Queen = 0 0 0 1 0 1 0 1 1 0
1001001010 from left to right. NF_Queen = 4
ET_Queen = 5
Let, set S = {Ti, <FC_Ti>, NF_Ti, ET_Ti, RET_Ti} FC_Drone [1] = FC_T1 = 1 0 1 0 0 1 0 0 1 0
NF_Drone [1] = NF_T1 = 4
Number of Remaining
Test Faults Faults Execution Execution ET_Drone [1] = ET_T1 = 7
Cases Covered Covered Time Time
T1 1010010010 4 7 15 After mating, the brood generated is brood [1].
T2 0100000100 2 3 19
T3 0100101000 3 5 17
T4 0001010110 4 5 17 FC_Brood [1] = FC_Queen || FC_Drone [1] = 0001010110
T5 1000010001 3 3 19
T6 0001100100 3 6 16
|| 1010010010 = 1 0 1 1 0 1 0 1 1 0
T7 1000001100 3 3 19 NF_Brood [1] = Number of 1’s in FC_Brood [1] = 6
T8 0100000001 2 2 20 ET_Brood [1] = ET_Queen + ET_Drone [1] = 5 + 7 = 12
RET_Brood [1] = TC - ET_Brood [1] = 22 - 12 = 10
Available = < T1, T2, T3, T4, T5, T6, T7, T8 > P_Brood [1] = FIS1 (µNF_Brood [1], µRET_Brood [1]) = FIS1 (0.6,
0.4545) = 0.5023
The selection priority of each test case is calculated
by using the fuzzy inference system (FIS 1). The Similarly all the broods are generated as shown in table.
Brood Test FC_Brood NF_Brood ET_Brood RET_Brood P_Brood
membership values for faults covered and remaining [i] Cases [i] [i] [i] [i] [i]
execution time corresponding to each test case is I=1 T4, T1 1 0 1 1 0 1 0 1 1 0 6 12 10 0.5023
2 T4, T2 0 1 0 1 0 1 0 1 1 0 5 8 14 0.5751
calculated. As, 3 T4, T3 0 1 0 1 1 1 1 1 1 0 7 10 12 0.7168
For, test case T1 4 T4, T5 1 0 0 1 0 1 0 1 1 1 6 8 14 0.5751
5 T4, T6 0 0 0 1 1 1 0 1 1 0 5 11 11 0.5033
µfaults_covered (T1) = NF_T1 / NF = 4 / 10 = 0.4 6 T4, T7 1 0 0 1 0 1 1 1 1 0 6 8 14 0.5751
µremaining execution_time (T1) = RET_T1 / TC = 15 / 22 = 0.682 7 T4, T8 0 1 0 1 0 1 0 1 1 1 6 7 15 0.6575

658
World Appl. Sci. J., 31 (4): 654-662, 2014

As, the selection priority of none of the brood is As, the selection priority of brood [2] is better than
better than the queen. So all the broods are killed and the the queen. So the queen is replaced and all the remaining
process continues with the selection of next queen from broods are killed. The process continues with the new
the previous stage. queen.

Queen = T1,T6,T3 FC_Queen NF_Queen ET_Queen RET_Queen P_Queen


Available = < T1, T2, T3, T4, T5, T6, T7, T8 > 1111111110 9 18 4 0.8760

Next best Queen is: Drones = Drones - Queen = < T2, T4, T5, T7, T8 >
Queen = T1 FC_Queen NF_Queen ET_Queen RET_Queen P_Queen
1010010010 4 7 15 0.6545 Drones = T2 T4 T5 T7 T8

Drones = Again the mating flight begins with queen (T1, T6, T3).
Available - Queen = < T2, T3, T4, T5, T6, T7, T8> The queen mates with all the drones one by one and
breed respectively in the hive to generate broods
Drones = T2 T3 T4 T5 T6 T7 T8
Brood Test FC_Brood NF_Brood ET_Brood RET_Brood P_Brood
[i] Cases [i] [i] [i] [i] [i]
Again the mating flight begins with queen (T1). The I=1
2
T1, T6, T3, T2
T1, T6, T3, T4
1111111110
1111111110
9
9
21
23
1
-1
0.8762
-----
queen mates with all the drones one by one and breed 3 T1, T6, T3,T5 1111111111 10 21 1 0.5000
4 T1, T6, T3, T7 1111111110 9 21 1 0.8762
respectively in the hive to generate broods. 5 T1, T6, T3, T8 1111111111 10 20 2 0.5000

Brood Test FC_Brood NF_Brood ET_Brood RET_Brood P_Brood


[i] Cases [i] [i] [i] [i] [i]
As, brood [3] and brood [5] satisfies the condition
I=1 T1, T2 1110010110 6 10 12 0.5023 NF_Brood[j] = NF and ET_Brood[j] <= TC.
2 T1, T3 1110111010 7 12 10 0.7170
3 T1, T4 1011010110 6 12 10 0.5023
4 T1, T5 1010010011 5 10 12 0.5031 Hence, P_Brood[3] = FIS2(µNF_Brood[3], µRET_Brood[3]) = FIS2(1.0,
5 T1, T6 1011110110 7 13 9 0.7177
6 T1, T7 1010011110 6 10 12 0.5023 0.04545) = 0.21
7 T1, T8 1110010011 6 9 13 0.5023
P_Brood[5] = FIS2(µNF_Brood[5], µRET_Brood[5]) = FIS2(1.0,
0.09090) = 0.468
As, the selection priority of brood [5] is better than Now, brood [3] and brood [5] together with their
the queen. So the queen is replaced and all the remaining priority are put in the List.
broods are killed. The process continues with the new Similarly all the subset of test cases satisfying the
queen. condition is found and put into the List.

Queen = T1,T6 FC_Queen NF_Queen ET_Queen RET_Queen P_Queen


Test Cases Priority (P_Brood)
1011110110 7 13 9 0.7177
T1, T6, T3, T5 0.21
T1, T6, T3, T8 0.468
Drones = Drones - Queen = < T2, T3, T4, T5, T7, T8 > T1, T6, T8, T7 0.684
T1, T6, T2, T5, T7 0.206
T1, T3, T4, T5 0.468
Drones = T2 T3 T4 T5 T7 T8 T1, T3, T4, T8 0.637
T1, T5, T6, T7, T8 0.206

Again the mating flight begins with queen


Finally, after the completion of the process a Final
(T1, T6). The queen mates with all the drones one by
List is formed, which contains the subset of test cases
one and breed respectively in the hive to generate
from the List in order of their priority.
broods
Final List Test Cases Priority (P_Brood)
Brood Test FC_Brood NF_Brood ET_Brood RET_Brood P_Brood
T1, T6, T8, T7 0.684
[i] Cases [i] [i] [i] [i] [i]
T1, T3, T4, T8 0.637
I = 1 T1, T6, T2 1111110110 8 16 6 0.8064
2 T1, T6, T3 1111111110 9 18 4 0.8760 T1, T6, T3, T8 0.468
3 T1, T6, T4 1011110110 7 18 4 0.7180 T1, T3, T4, T5 0.468
4 T1, T6, T5 1011110111 8 16 6 0.8064 T1, T6, T3, T5 0.21
5 T1, T6, T7 1011111110 8 16 6 0.8064 T1, T6, T2, T5, T7 0.206
6 T1, T6, T8 1111110111 9 15 7 0.8533 T1, T5, T6, T7, T8 0.206

659
World Appl. Sci. J., 31 (4): 654-662, 2014

RESULTS 4. Karaboga, Dervis, Beyza Gorkemli, Celal Ozturk and


Nurhan Karaboga, 2013. "A comprehensive survey:
It is seen that the set of test cases in the final list has artificial bee colony (ABC) algorithm and
covered all the faults within the given time constraint. So, applications." Artificial Intelligence Review, pp: 1-37.
these set of test cases like {T1, T6, T8, T7}, {T1, T3, T4, 5. Leung, H. and L. White, 1989. Insights into
T8} and many more in the final list are the required regression testing. In Proceedings of the Conference
reduced set of test cases produced by our proposed on Software Maintenance, pp: 60-69
algorithm. It can be observed that the reduction in the test 6. Graves, T., M.J. Harrold, J.M. Kim, A. Porter and
suite using the proposed algorithm is approximately 50%. G. Rothermel, An empirical study of regression test
In order to produce more reduced set of test cases the selection techniques, in: Proceedings of the 20th
above process need to be iterated. International Conference on Software Engineering,
IEEE Computer Society Press, Kyoto, Japan, 1998,
CONCLUSION pp: 188-197.
7. Rothermel, G. and M. Harrold, 1994. Selecting tests
This paper proposed an algorithm for regression test and identifying test coverage requirements for
case optimization, which reduces the large test suites modified software. In Proceedings of the
using HBMO algorithm with fuzzy rule base. This International Symposium on Software Testing and
algorithm has been evaluated for different set of examples. Analysis, pp: 169-184.
One of the examples has been shown in this paper. The 8. Moritz, R.F.A. and E.E. Southwick, 1992. Bees as
proposed algorithm reduces the test data by Superorganisms, Springer, Berlin, Germany.
approximately 50%. The result was compared to different 9. Laidlaw, H.H. and R.E. Page, 1986. Mating designs,
existing algorithms like ant colony optimization and bee in: T.E. Rinderer (Ed.), Bee Genetics and Breeding,
colony optimization with genetic algorithm. It was found Academic Press Inc. New York, NY, pp: 323-341.
that, the percentage reduction of test cases was little bit 10. Teodorovi , Dušan, Tatjana Davidovi and Milica
low, even though the overall algorithm was found efficient Šelmi , "Bee Colony Optimization Overview."
as it provides an authentic way of selecting test cases 11. Zadeh, L.A., 1965. Fuzzy sets, Information and
using fuzzy logic. Fuzzy logic removes the uncertainty Control, 8: 338-353.
associated with the selection of test cases in existing 12. Rai Deepak and K. Tyagi, 2013. “Estimating the
algorithms. Regression Test Case Selection Probability using
Issues of future work include the consideration of Fuzzy Rules.” in the proceedings of 3 rd IEEE
more parameters for test case selection and, applying the International Conference on Recent Trends in
proposed algorithm on many more large and complex Information Technology (ICRTIT 2013), pp: 25-27
examples, in order to prove its effectiveness and usability. July, 2013, Chennai, India.
13. Yonezawa, Y. and T. Kikuchi, 1996. Ecological
REFERENCES algorithm for optimal orderingused by collective
Honey bee behavior. In: Proceedings of the Seventh
1. Kapfhammer, G., 2004. The Computer Science International Symposium on Micro Machine and
Handbook, chapter on Software testing. CRC Press, Humane Science. Nagoya, Japan, pp: 249-255.
Boca Raton, FL, 2nd Edition, 14. Sato, T. and M. Hagiwara, 1997. Bee System: Finding
2. Do, H., S. Mirarab, L. Tahvildari and G. Rothermel Solution by a Concentrated Search. In Proceedings
The effects of time constraints on test case of the IEEE International Conference on Systems,
prioritization: A series of controlled experiments. Man and Cybernetics “Computational Cybernetics
IEEE Transactions on Soft ware Engineering, and Simulation”. Orlando, FL, USA, pp: 3954-3959.
36(5): 593-617. 15. Abbas, H.A., 2001. MBO: marriage in honey bees
3. Rai Deepak and Kirti Tyagi, 2013. "Bio-inspired optimization-a Haplometrosis polygynous swarming
optimization techniques: a critical comparative approach. In Proceedings of the Congress on
study." ACM SIGSOFT Software Engineering Evolutionary Computation. Seoul, South Korea,
Notes, 38(4): 1-7. pp: 207-214.

660
World Appl. Sci. J., 31 (4): 654-662, 2014

16. Wedde, H.F., M. Farooq and Y. Zhang, 2004. 26. Afshar, A., O. Bozorg Haddada, M.A. Marin and B.J.
BeeHive: An efficient fault-tolerant routing algorithm Adams, 2007. Honey-bee mating optimization
inspired by honey bee behavior. In Ant Colony (HBMO) algorithm for optimal reservoir operation. J.
Optimization and Swarm Intelligence. LNCS 3172, Frank. Instit. 344: 452-462.
Springer-Verlag, Berlin, pp: 83-94. 27. Bozorg Haddad, O., A. Afshar and M.A. Mariño,
17. Wedde, H.F., S. Lehnhoff, B. Van Bonn, Z. Bay, S. 2005. Honey bees mating optimization algorithm
Becker, S. Bottcher, C. Brunner, A. Buscher, T. (HBMO); a new heuristic approach for engineering
Furst, M. Lazarescu, Rotaru, E. Senge, B. optimization, in: Proceeding of the First International
Steinbach, F. Yilmaz and T. Zimmermann, 2007. A Conference on Modeling, Simulation and Applied
Novel Class of Multi-Agent Algorithms for Highly Optimization (ICMSA0/05), Sharjah, UAE, pp: 1-3.
Dynamic Transport Planning Inspired by Honey Bee 28. Kilic, H., E. Koc and I. Cereci, 2011. Search-based
Behaviour. In Proceedings of the 12th IEEE parallel refactoring using population-based direct
International Conference on Factory Automation, approaches. In: Cohen M, Cinnide M (eds) Search
Patras, Greece, pp: 1157-1164. based software engineering. Lecture notes in
18. Fathian, M., B. Amiri and B. Maroosi, 2008. computer science, vol 6956. Springer, Berlin,
A honeybee-mating approach for cluster analysis. pp: 271-272.
Int. J. Adv. Manuf. Technol., 38: 809-821. 29. Soimart, P. and P. Pongcharoen, 2011. Multi-row
19. Karaboga, D. and B. Basturk, 2007. A powerful and machine layout design using aritificial bee colony. In:
efficient algorithm for numerical function 2011 International Conference on Economics and
optimization: artificial bee colony (ABC) algorithm. J. Business Information, 9: 103-108.
30. Li, L.F. and M. Ma, 2011. Artificial bee colony
Global. Optim. 39: 459-471.
algorithm based solution method for logic
20. Karaboga, D., B. Basturk Akay and C. Ozturk, 2007.
reasoning. Comput Technol Dev doi:CNKI: SUN:
Artificial Bee Colony (ABC) Optimization Algorithm
WJFZ.0. pp: 06-035.
for Training Feed-Forward Neural Networks. In:
31. Mirarab, Siavash, Soroush Akhlaghi and Ladan
LNCS: Modeling Decisions for Artificial Intelligence,
Tahvildari, 2012. "Size-Constrained Regression
Springer-Verlag, Berlin Heidelberg, pp: 318-319.
Test Case Selection Using Multicriteria
21. Koudil, M., K. Benatchba and Tarabetand A. El-
Optimization." Software Engineering, IEEE
Batoul Sahraoui, 2007. Using artificial bees to solve
Transactions on 38(4): 936-956.
partitioning and scheduling problems in codesign.
32. Xing, Jianchun, et al., 2012. "Safe Regression Test
Appl. Math. Comput., 186: 1710-1722.
Selection Based on Program Dependence
22. Pham, D.T., A. Haj Darwish and E.E. Eldukhr, 2009.
Graphs." Computer Software and Applications
Optimization of a fuzzy logic controller using
Conference Workshops (COMPSACW), 2012 IEEE
the Bees Algoithm. Int. J. Comp. Aid. Eng. Tech., 36th Annual. IEEE.
pp: 1250-1264. 33. Mala, D.J., V. Mohan and M. Kamalapriya, 2010.
23. Quijano, N. and K.M. Passino, 2007. Honey Bee Automated software test optimisation framework-an
Social Foraging Algorithms for Resource Allocation, artificial bee colony optimisation-based approach.
Part I: Algorithm and Theory. In Proceedings of the IET Softw, 4(5): 334-348.
2007 American Control Conference, New York, 34. AdiSrikanth, N.J. Kulkarni, K.V. Naveen, P. Singh and
pp: 3383-3388. P.R. Srivastava, 2011. Test case optimization using
24. Quijano, N. and K.M. Passino, 2007. Honey Bee artificial bee colony algorithm. In: Abraham A, Mauri
Social Foraging Algorithms for Resource JL, Buford JF, Suzuki J, Thampi SM (eds) Advances
Allocation, Part II: Application. In Proceedings of the in computing and communications, communications
2007 American Control Conference, New York in computer and information science, vol. 192.
pp: 3389-3394. Springer, Berlin, pp: 570-579.
25. Pham ,DT., A.J. Soroka, A. Ghanbarzadeh and E. Koc, 35. Xu, Z., K. Gao and Taghi M. Khoshgoftaar, 2005.
2006. Optimizing Neural Networks for Identification “Application of Fuzzy Expert System In Test Case
of Wood Defects Using the Bees Algorithm. In Selection For System Regression Test”, Information
Proceedings of the IEEE International Conference on Reuse and Integration, Conf, 2005. IRI -2005 IEEE
Industrial Informatics, Singapore, pp: 1346-1351. International Conference on, pp: 120-125.

661
World Appl. Sci. J., 31 (4): 654-662, 2014

36. Alakeel, Ali, 2012. "A Fuzzy Test Cases Prioritization 37. Bhasin, H., S. Gupta and M. Kathuria, 2013.
Technique for Regression Testing Programs with “Regression Testing Using Fuzzy Logic”,
Assertions." In ADVCOMP 2012, The Sixth International Journal of Computer Science and
International Conference on Advanced Information Technologies (IJCSIT), 4 (2): 378-380.
Engineering Computing and Applications in
Sciences, pp: 78-82. 2012.

662

View publication stats

You might also like