2. Publication details
School of Computer Science and Engineering,
VIT University, Vellore, Tamil Nadu,
India
International Journal of Computer Science & Engineering
Survey (IJCSES) Vol.7, No.2, April 2016
SOFTWARE TESTING USING GENETIC ALGORITHMS 2
3. Introduction
This paper presents a set of methods that uses a
genetic algorithm for automatic test-data generation in
software testing.
In addition to this introduction and a conclusion at the
end It is organized in to four major sections
The problem
Methods used
Results claimed
Critics
SOFTWARE TESTING USING GENETIC ALGORITHMS 3
4. The research problem
The paper presents Software testing is a process in which
the runtime quality and quantity of a software is tested to
maximum limits.
The basic test of software is done in the environment for
which it is has been designed.
The authors claim that Genetic algorithms are one of the
best ways to solve a set of problems for which little
information is given. And it is very general algorithm and so
they will work well in any search space.
SOFTWARE TESTING USING GENETIC ALGORITHMS 4
5. Cont…
According to the authors the Evolutionary Testing uses
a kind of meta-heuristic search technique, the
Genetic Algorithm (GA), to convert the task of test
case generation into an optimal problem. It’s run
through is checked for correct and efficient outputs.
The authors stated that different types of genetic
algorithms is done on this paper.
SOFTWARE TESTING USING GENETIC ALGORITHMS 5
6. Cont…
Different algorithms have been run on different
tools and analyzed for their performance. All these
algorithms follow the same basis of evolutionary
testing but have different cost functions.
On running these cost functions on different tools,
observations on how these functions respond are
made.
SOFTWARE TESTING USING GENETIC ALGORITHMS 6
7. Approaches and Methods employed
According to the authors Genetic algorithms use the
following three operations on its population.
Selection
Crossover
Mutation
Let us see them one by one;
SOFTWARE TESTING USING GENETIC ALGORITHMS 7
8. Cont…
Selection:- A selection process is applied to determine a
way in which individuals are chosen for mating from a
population based on their fitness. Fitness is defined as a
characteristic and capability of an individual to survive and
reproduce in an environment.
SOFTWARE TESTING USING GENETIC ALGORITHMS 8
9. Conts…
Crossover:- Crossover involves swapping of sequence of
bits or genes in the string between two individuals. This
process of swapping is carried out and repeated each time
with different parent individuals until the next generation
has optimum individuals.
SOFTWARE TESTING USING GENETIC ALGORITHMS 9
10. Conts…
Mutation: After the crossover process, the mutate
operation is applied to a randomly select subset of the
population. Mutation leads to an alteration of chromosomes
in small new ways to introduce good traits. The main aim
of mutation is to bring diversity in population.
SOFTWARE TESTING USING GENETIC ALGORITHMS 10
11. Results and discussions
According to the authors Genetic algorithms are most
efficient and effective in a search space for which
little is known.
Then again, genetic algorithms can be used to
produce solutions to problems working only in the
test environment and deviates once you try to use
them in the real world.
So when put simply, genetic algorithm can be used to
create solutions for problems that are not very easy
to calculate and analyze.
SOFTWARE TESTING USING GENETIC ALGORITHMS 11
12. Cont…
And the authors listed some implementation of
Genetic Algorithm(GA) in software testing like:-
Test case generation using GA in Ruby Trust-based system
Genetic Algorithm Implementation in C++
Genetic Algorithm Implementation using Matlab
SOFTWARE TESTING USING GENETIC ALGORITHMS 12
13. Critics
Positive aspects
The paper is clear, easy to read and understand
The logicality of the findings given the problem
statement is acceptable
The finding and well evaluated and explained deeply
The implementation section have details regarding on
implementation of Genetic algorithm in different
software testing mechanism like MATLAB, Ruby & C++.
The paper was figurative and explanatory with examples.
SOFTWARE TESTING USING GENETIC ALGORITHMS 13
14. Cont…
Negative aspects
Review of related works is also not mentioned in the
paper.
The general approach was used instead of
comparative approach with other algorithms.
SOFTWARE TESTING USING GENETIC ALGORITHMS 14
15. Conclusion
The work is motivational
With all its limitations it can be said that the authors
really achieve their objectives
Good for further research on this topic as the direction
given by the authors
SOFTWARE TESTING USING GENETIC ALGORITHMS 15