SlideShare a Scribd company logo
Short Paper
                                                              ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013



       Evolutionary Testing Approach for Solving Path-
               Oriented Multivariate Problems
                                               P.Maragathavalli1 and S.Kanmani2
                1
                  Pondicherry Engineering College /Department of Information Technology, Puducherry, India
                                                E-mail:marapriya@pec.edu
                2
                  Pondicherry Engineering College /Department of Information Technology, Puducherry, India
                                                 E-mail:kanmani@pec.edu

Abstract— A multivariate approach involves varying number                 mation of multiple fitness values named random weighted
of objectives to be satisfied simultaneously in testing process.          genetic algorithm (RWGA); another approach is consider-
An evolutionary approach, genetic algorithm is taken for                  ing multiple objectives at a time and generating Pareto opti-
solving multivariate problems in software engineering. The                mal solution set named diversity based or non-dominated
Multivariate Optimization Problem (M OP) has a set of
                                                                          sorting genetic algorithm (NSGA) [4] [7] [8].
solutions, each of which satisfies the objectives at an acceptable
level. Another evolutionary algorithm named SBGA (stage-
based genetic algorithm) with two stages is attempted for                                     II. EXISTING METHODS
solving problems with multiple objectives like cost                           Genetic algorithms are the most popular heuristic
minimization, time reduction and maximizing early fault
                                                                          technique to solve Multi-Objective Optimization Problems
deduction capabilities. In this paper, a multivariate genetic
algorithm (MGA) in terms of stages for path-based programs
                                                                          [2]. A Multi-Objective Optimization Problem has a number of
is presented to get the benefits of both multi-criteria                   objective functions, which are to be minimized or maximized.
optimization and genetic algorithm. The multiple variables                MOOP can be expressed as, fitness function fm(x), where m =
considered for test data generation are maximum path coverage             1, 2, 3… M no. of objective functions & x = single candidate
with minimum execution time and test-suite minimization.                  solution. The methods [1] [4] used for multi-objective
The path coverage and the no. of test cases generated using               optimization are ranking, diversity and combined approach,
SBGA are experimented with low, medium and high complexity                NRGA [5].
object-oriented programs and compared with the existing GA
approaches. The data-flow testing of OOPs in terms of path
                                                                                  III. STAGE-BASED GENETIC ALGORITHM (SBGA)
coverage are resulted with almost 88%. Thus, the efficiency
of generated testcases has been improved in terms of path                     The design diagram of stage-based genetic algorithm by
coverage with minimum execution time as well as with the                  considering multiple objectives for stage-wise optimization
minimal test suite size.                                                  is shown in Fig. 1. In this paper, the multi-objective
                                                                          optimization using SBGA is attempted by changing the GA
Index Terms— multivariate problems, stage-based genetic
al gori thm, p ath coverag e, executi on time, test-sui te
                                                                          operations with various GA parameter values. Instead of
reduction, evolutionary testing.                                          two-point crossover and mutation, uniform crossover and
                                                                          SBGA i.e. non-dominated sorting genetic algorithm [2] [6]
                         I. INTRODUCTION                                  which use two stages in generating test cases.The test case
                                                                          selection for next generation uses ranking of fitness values.
    Evolutionary algorithms which are more advanced heu-                  By seeing the dominance between test cases, the test case is
ristic search techniques have been successfully applied in                being selected for next iteration. In one-stage, sequencing
the area of software testing. For a large search space and                of methods will take place and in another-stage the values
getting optimal set of solutions GA is the best choice in soft-           will be passed to methods.
ware testing. Commonly, these techniques are referred as
evolutionary testing. Evolutionary testing tries to improve               A. Input Representation
the effectiveness and efficiency of the testing process by                    The input representation is in the form of control flow
transforming testing objectives into search problems, and                 graphs (CFGs) and the output will be the generated test cases.
applying evolutionary similarity mutation is taken as new GA              CFG will give the dependencies between variables associated
operators. Approaches, like ideal and preference are used in              with specific nodes. Control-flow graph of classes (CCFG)
computation in order to solve them. In this testing of soft-              For representing test objects in object-oriented programs by
ware can be done with a single objective or with multiple                 using CFGs in which a directed graph G = (N, E) where nodes
objectives [1][3]. Instead of fixing only one criteria or quality         represent methods and edges represent procedure calls. The
parameter for generating test cases, multiple objectives like             class control-flow graph (CCFG) is a class-call graph [2] [6] in
minimizing the time & cost and no. of test cases simulta-                 which each node is replaced with the control-flow graph of
neously maximizing the coverage (i.e., the test requirements)             the corresponding method and all methods of the class are
would be considered. The techniques used in GA for multi-                 connected together by edges.
criteria optimization are of two types: one approach is sum               Control-flow graph of classes (CCFG)
© 2013 ACEEE                                                         54
DOI: 01.IJIT.3.1. 1100
Short Paper
                                                                 ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013


For representing test objects in object-oriented programs by
using CFGs in which a directed graph G = (N, E) where nodes
represent methods and edges represent procedure calls. The
class control-flow graph (CCFG) is a class-call graph [2] [6] in
which each node is replaced with the control-flow graph of
the corresponding method and all methods of the class are
connected together by edges.




                                                                                           Fig. 2. Stack program as an example
                                                                             parents go to offspring. The mutation is done using similarity
Fig. 1. Stage-Based Genetic Algorithm – An Evolutionary Approach             mutation in which a similar gene is replaced with a different
                                                                             test case.
B. Test criteria and Chromosome Representation
                                                                                                  TABLE I. GA OPERATORS
    The test criteria for generating test cases consists of a
triple [d, u, a] where‘d’ def_node, ‘u’ use_node & ‘a’
associated variable. For example, consider the stack program
with single class in Fig. 2; the criteria will be of the form [7, 11,
top]. A test case consists of a sequence of methods
invocation appended by their parameter values [1][2]. The
‘chromosome’ for a given criteria [d, u, a] contains the
following:
Invocation of a constructor ‘c’
                                                                             Fitness function ft(vi) = ½(cov_d / tot_d) + ½(cov_u / tot_u)
Method md that causes the execution of ‘d’
                                                                             * I = no. of chromosomes in next generation / no. of
Method mu that causes the execution of ‘u’
                                                                             chromosomes in current generation
Values to the parameters ‘v’
                                                                                                 TABLE II. GA PARAMETERS
C. Test Data Generation
    The parameters and operators considered for test data
generation in GA, their initial and range of values are tabulated
in tableI and the results are shown in table II. The crossover
used for getting the offsprings is uniform crossover which
uses a fixed mixing ratio between two parents. For example, if
the mixing ratio is 0.5, then half of the genes from both the

© 2013 ACEEE                                                            55
DOI: 01.IJIT.3.1.1100
Short Paper
                                                               ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013


                        IV. EXPERIMENT                                   covers only 87%. For print-token2, SBGA covers 96% with
                                                                         ET = 5140ms and GA 86% with 5990ms. The parameter
A. Test Data
                                                                         Immigration rate, ‘I’ value should be minimum; since the ‘I’
    Initially, simple java programs upto 200 lines of code are           value is taken from the difference between the current
experimented with various coverage criterions. The results               generation test cases (chromosomes) and the initial test
are satisfactory, and then five programs from Software                   cases, the value of new generation chromosomes should be
Infrastructure Repository with equal complexity are taken for            minimum.
experiment; the lines of code are from the range (200-800).                  For example, when 10 test cases is reduced to 4, the value
The no of classes are in the range of (1, 2, 4 … 24) and the             will be 0.4; reduced to 3, then 0.3; so, when I is less, small no
branches of upto 60 are taken for experimentation. No. of                of test cases are resulted; I is high, optimal set contains more
generations is from 95 to 150 with the interval of 5; one era            no. of test cases; i.e. I = 4/10 = 0.4 ; I = 3/10 = 0.3; I = 5/10
can have max. of 30 generations. The path coverage is                    = 0.5. The value 10 is only for an example; so, it need not be
predicted as a ratio between the conditions covered by the               10; 8/20 or some, 6/20 etc. On the whole, the no. of conditions
total no. of conditions in the tested program and presented              satisfied by SBGA is more when compared to GA and is the
in %.                                                                    results are tabulated in table III.
B. Result Analysis                                                           The execution time variation for both SBGA and GA is
                                                                         shown in graph 1; Test data generation time for each program
    Programs like array-partition, ordset, replace, and
                                                                         varies from 2200 – 5990 ms. When no of classes and variables
schedule2 gives better coverage results in fast execution;
                                                                         are more, the time is also be more; the conditions to be
because, the number of conditions to be checked for selecting
                                                                         checked by test data increases, execution time will also be
test cases are less whereas in print-token2 and traffic collision
                                                                         increased directly. Search time is a main criterion in GA for
avoidance system (TCAS) type of programs classes and
                                                                         test data generation. So, that should be minimized. By using
conditions are more almost 60, so takes more time for execution.
                                                                         SBGA, the overall testing time is reduced by minimizing the
In TCAS, each and every vehicle should be monitored to
                                                                         total no of test cases generated. Reduction in test suite in
order to avoid collision; so, takes more time to run the system
                                                                         terms of immigration rate ‘I’ is also shown in graph 1. Total no
with execution time of 4265ms in SBGA whereas GA takes
                                                                         of chromosomes reduction is reflected in ‘I’; initially, the rate
4912ms. The path coverage results are 97% in SBGA, GA
                                           TABLE III. RESULTS OBTAINED FOR SAMPLE JAVA PROGRAMS




© 2013 ACEEE                                                        56
DOI: 01.IJIT.3.1.1100
Short Paper
                                                               ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013




                              Graph. 1. Execution time in ms and Immigration rate ‘I’ results in SBGA and GA

is fixed as 0.3-0.9. In real scenario, SBGA ranges from 0.3-0.5            [2]     Ahmed S. Ghiduk, “Automatic Generation of Object-Oriented
only; the comparison in immigration rate of SBGA with GA is                       Tests with a Multistage-Based Genetic Algorithm,” Journal
also shown in graph1. So, the test data generated using stage-                    of computers, Vol. 5, No. 10, pp. 1560-1569, October 2010.
                                                                           [3]    Dhirendra Pal Singh, AshishKhare, “Different Aspects of
based genetic algorithm by simultaneously satisfying multiple
                                                                                  Evolutionary Algorithms, Multi-Objective Optimization
objectives has been implemented and tested with different                         Algorithms and Application Domain,” International Journal
data sets.                                                                        of Advanced Networking and Applications, Vol. 2, Iss.04, pp.
                                                                                  770-775, 2011.
                           CONCLUSION                                      [4]    Abdullah Konak, David W. Coit, and Alice E. Smith, “Multi-
                                                                                  objective optimization using genetic algorithms: A tutorial,”
    Thus, the multivariate genetic algorithm with two stages                      Reliability Engineering and System Safety, Elsevier, pp. 992-
SBGA is used for generation of object-oriented test cases.                        1007, January 2006.
The fitness is purely depends on the path coverage of the                  [5]   Omar Al Jadaan, Lakishmi Rajamani, and C. R. Rao, “Non-
test cases in the class. The results for sample java programs                     dominated Ranking Genetic Algorithm for solving Multi-
show that the efficiency and effectiveness of test cases                          Objective Optimization Problems: NRGA,” Journal of
generated by SBGA in terms of path coverage. In addition to                       Theoretical and Applied Information Technology, pp. 60-67,
path coverage, the time required for execution and the                            2008.
immigration rate are also satisfactory. This algorithm satisfies           [6]     Andreas S.Andreou, Kypros A. Economides and Anastasis A.
                                                                                  Sofokleous, “An Automatic software test-data generation
more than one variable in terms of objective simultaneously
                                                                                  scheme based on data flow criteria and genetic algorithms,” 7th
and tested with various sample program sets. The results                          International Conference on Computer and Information
can also be compared with other java packages for similar                         Technology, pp. 867-872, 2007.
type of problems.                                                          [7]    Kalyanmoy Deb, “Multi-Objective Optimization Using
                                                                                  Evolutionary Algorithms: An Introduction,” Technical Report
                           REFERENCES                                             2011003, Indian Institute of Technology Kanpur, February
                                                                                  2011.
[1]    Anon Sukstrienwong, “Solving multi-objective optimization           [8]   Yuanyuan Zhang, “Multi-Objective Search-Based Requirements
      under bounds by genetic algorithms,” International Journal of               Selection and Optimization,” Ph.D Thesis, University of
      Computers, Vol.5, Iss.1, pp. 18-25, 2011.                                   London, pp. 1-276, February 2010.




© 2013 ACEEE                                                          57
DOI: 01.IJIT.3.1. 1100

More Related Content

What's hot (18)

PDF
Sequential estimation of_discrete_choice_models__copy_-4
YoussefKitane
 
PDF
Particle Swarm Optimization in the fine-tuning of Fuzzy Software Cost Estimat...
Waqas Tariq
 
PDF
Sequential estimation of_discrete_choice_models
YoussefKitane
 
PDF
PARTICLE SWARM OPTIMIZATION FOR MULTIDIMENSIONAL CLUSTERING OF NATURAL LANGUA...
IAEME Publication
 
PDF
A Model To Compare The Degree Of Refactoring Opportunities Of Three Projects ...
acijjournal
 
PDF
Reusability Metrics for Object-Oriented System: An Alternative Approach
Waqas Tariq
 
PDF
Evaluation of Process Capability Using Fuzzy Inference System
IOSR Journals
 
PDF
IRJET - Ensembling Reinforcement Learning for Portfolio Management
IRJET Journal
 
PDF
HYBRID GENETIC ALGORITHM FOR BI-CRITERIA MULTIPROCESSOR TASK SCHEDULING WITH ...
aciijournal
 
PDF
AN EFFICIENT CODEBOOK INITIALIZATION APPROACH FOR LBG ALGORITHM
IJCSEA Journal
 
PDF
Cost Optimization of Multistoried RC Framed Structure Using Hybrid Genetic Al...
IRJET Journal
 
PDF
KnowledgeFromDataAtScaleProject
Marciano Moreno
 
PDF
ENSEMBLE REGRESSION MODELS FOR SOFTWARE DEVELOPMENT EFFORT ESTIMATION: A COMP...
ijseajournal
 
PDF
Efficient Feature Selection for Fault Diagnosis of Aerospace System Using Syn...
IRJET Journal
 
PDF
Group Project
Xiyuan Sun
 
PDF
Bd36334337
IJERA Editor
 
PDF
Image Steganography Using Wavelet Transform And Genetic Algorithm
AM Publications
 
Sequential estimation of_discrete_choice_models__copy_-4
YoussefKitane
 
Particle Swarm Optimization in the fine-tuning of Fuzzy Software Cost Estimat...
Waqas Tariq
 
Sequential estimation of_discrete_choice_models
YoussefKitane
 
PARTICLE SWARM OPTIMIZATION FOR MULTIDIMENSIONAL CLUSTERING OF NATURAL LANGUA...
IAEME Publication
 
A Model To Compare The Degree Of Refactoring Opportunities Of Three Projects ...
acijjournal
 
Reusability Metrics for Object-Oriented System: An Alternative Approach
Waqas Tariq
 
Evaluation of Process Capability Using Fuzzy Inference System
IOSR Journals
 
IRJET - Ensembling Reinforcement Learning for Portfolio Management
IRJET Journal
 
HYBRID GENETIC ALGORITHM FOR BI-CRITERIA MULTIPROCESSOR TASK SCHEDULING WITH ...
aciijournal
 
AN EFFICIENT CODEBOOK INITIALIZATION APPROACH FOR LBG ALGORITHM
IJCSEA Journal
 
Cost Optimization of Multistoried RC Framed Structure Using Hybrid Genetic Al...
IRJET Journal
 
KnowledgeFromDataAtScaleProject
Marciano Moreno
 
ENSEMBLE REGRESSION MODELS FOR SOFTWARE DEVELOPMENT EFFORT ESTIMATION: A COMP...
ijseajournal
 
Efficient Feature Selection for Fault Diagnosis of Aerospace System Using Syn...
IRJET Journal
 
Group Project
Xiyuan Sun
 
Bd36334337
IJERA Editor
 
Image Steganography Using Wavelet Transform And Genetic Algorithm
AM Publications
 

Viewers also liked (6)

PDF
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...
IDES Editor
 
PDF
Linear Model Predictive Controller for Closed-Loop Control of Intravenous Ane...
IDES Editor
 
PDF
An Experimental Investigation into the Grindability Aspects of Newly Develope...
IDES Editor
 
PDF
Design limitations and its effect in the performance of ZC1-DPLL
IDES Editor
 
PDF
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
IDES Editor
 
PDF
Synthesis of Non-Replicated Dynamic Fragment Allocation Algorithm in Distribu...
IDES Editor
 
Permutation of Pixels within the Shares of Visual Cryptography using KBRP for...
IDES Editor
 
Linear Model Predictive Controller for Closed-Loop Control of Intravenous Ane...
IDES Editor
 
An Experimental Investigation into the Grindability Aspects of Newly Develope...
IDES Editor
 
Design limitations and its effect in the performance of ZC1-DPLL
IDES Editor
 
Automatic Synthesis and Formal Verification of Interfaces Between Incompatibl...
IDES Editor
 
Synthesis of Non-Replicated Dynamic Fragment Allocation Algorithm in Distribu...
IDES Editor
 
Ad

Similar to Evolutionary Testing Approach for Solving Path- Oriented Multivariate Problems (20)

PDF
Software Testing Using Genetic Algorithms
IJCSES Journal
 
PDF
White-Box Software Testing using Evolutionary Algorithms
Yaser Sulaiman
 
PDF
Dynamic Radius Species Conserving Genetic Algorithm for Test Generation for S...
ijseajournal
 
PDF
An enhanced pairwise search approach for generating
Alexander Decker
 
PDF
Ijcatr04051005
Editor IJCATR
 
PPT
Application of Genetic Algorithm in Software Testing
Ghanshyam Yadav
 
PDF
Da35573574
IJERA Editor
 
DOCX
A PARTICLE SWARM OPTIMIZATION TECHNIQUE FOR GENERATING PAIRWISE TEST CASES
Kula Sekhar Reddy Yerraguntla
 
PPTX
Evolutionary Testing of Stateful Systems: a Holistic Approach
matteomiraz
 
PDF
Karas and atila
Hieu Nguyen
 
PDF
Tutorial rpo
mosi2005
 
PDF
Parallel evolutionary approach paper
Priti Punia
 
PDF
Adaptation of parametric uniform crossover in genetic algorithm
csandit
 
PDF
ADAPTATION OF PARAMETRIC UNIFORM CROSSOVER IN GENETIC ALGORITHM
cscpconf
 
PDF
Hybrid approaches in Network Optical Routing with QoS based on Genetic Algori...
IDES Editor
 
PPTX
Using evolutionary testing to improve efficiency and quality
Faysal Ahmed
 
PDF
An Adaptive Hybrid Technique approach of Test Case Prioritization
INFOGAIN PUBLICATION
 
PDF
TMPA-2017: Evolutionary Algorithms in Test Generation for digital systems
Iosif Itkin
 
PDF
Application of Genetic Algorithm in Software Engineering: A Review
IRJESJOURNAL
 
Software Testing Using Genetic Algorithms
IJCSES Journal
 
White-Box Software Testing using Evolutionary Algorithms
Yaser Sulaiman
 
Dynamic Radius Species Conserving Genetic Algorithm for Test Generation for S...
ijseajournal
 
An enhanced pairwise search approach for generating
Alexander Decker
 
Ijcatr04051005
Editor IJCATR
 
Application of Genetic Algorithm in Software Testing
Ghanshyam Yadav
 
Da35573574
IJERA Editor
 
A PARTICLE SWARM OPTIMIZATION TECHNIQUE FOR GENERATING PAIRWISE TEST CASES
Kula Sekhar Reddy Yerraguntla
 
Evolutionary Testing of Stateful Systems: a Holistic Approach
matteomiraz
 
Karas and atila
Hieu Nguyen
 
Tutorial rpo
mosi2005
 
Parallel evolutionary approach paper
Priti Punia
 
Adaptation of parametric uniform crossover in genetic algorithm
csandit
 
ADAPTATION OF PARAMETRIC UNIFORM CROSSOVER IN GENETIC ALGORITHM
cscpconf
 
Hybrid approaches in Network Optical Routing with QoS based on Genetic Algori...
IDES Editor
 
Using evolutionary testing to improve efficiency and quality
Faysal Ahmed
 
An Adaptive Hybrid Technique approach of Test Case Prioritization
INFOGAIN PUBLICATION
 
TMPA-2017: Evolutionary Algorithms in Test Generation for digital systems
Iosif Itkin
 
Application of Genetic Algorithm in Software Engineering: A Review
IRJESJOURNAL
 
Ad

More from IDES Editor (20)

PDF
Power System State Estimation - A Review
IDES Editor
 
PDF
Artificial Intelligence Technique based Reactive Power Planning Incorporating...
IDES Editor
 
PDF
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...
IDES Editor
 
PDF
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...
IDES Editor
 
PDF
Line Losses in the 14-Bus Power System Network using UPFC
IDES Editor
 
PDF
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...
IDES Editor
 
PDF
Assessing Uncertainty of Pushover Analysis to Geometric Modeling
IDES Editor
 
PDF
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...
IDES Editor
 
PDF
Selfish Node Isolation & Incentivation using Progressive Thresholds
IDES Editor
 
PDF
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...
IDES Editor
 
PDF
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...
IDES Editor
 
PDF
Cloud Security and Data Integrity with Client Accountability Framework
IDES Editor
 
PDF
Genetic Algorithm based Layered Detection and Defense of HTTP Botnet
IDES Editor
 
PDF
Enhancing Data Storage Security in Cloud Computing Through Steganography
IDES Editor
 
PDF
Low Energy Routing for WSN’s
IDES Editor
 
PDF
Rotman Lens Performance Analysis
IDES Editor
 
PDF
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral Images
IDES Editor
 
PDF
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...
IDES Editor
 
PDF
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...
IDES Editor
 
PDF
Mental Stress Evaluation using an Adaptive Model
IDES Editor
 
Power System State Estimation - A Review
IDES Editor
 
Artificial Intelligence Technique based Reactive Power Planning Incorporating...
IDES Editor
 
Design and Performance Analysis of Genetic based PID-PSS with SVC in a Multi-...
IDES Editor
 
Optimal Placement of DG for Loss Reduction and Voltage Sag Mitigation in Radi...
IDES Editor
 
Line Losses in the 14-Bus Power System Network using UPFC
IDES Editor
 
Study of Structural Behaviour of Gravity Dam with Various Features of Gallery...
IDES Editor
 
Assessing Uncertainty of Pushover Analysis to Geometric Modeling
IDES Editor
 
Secure Multi-Party Negotiation: An Analysis for Electronic Payments in Mobile...
IDES Editor
 
Selfish Node Isolation & Incentivation using Progressive Thresholds
IDES Editor
 
Various OSI Layer Attacks and Countermeasure to Enhance the Performance of WS...
IDES Editor
 
Responsive Parameter based an AntiWorm Approach to Prevent Wormhole Attack in...
IDES Editor
 
Cloud Security and Data Integrity with Client Accountability Framework
IDES Editor
 
Genetic Algorithm based Layered Detection and Defense of HTTP Botnet
IDES Editor
 
Enhancing Data Storage Security in Cloud Computing Through Steganography
IDES Editor
 
Low Energy Routing for WSN’s
IDES Editor
 
Rotman Lens Performance Analysis
IDES Editor
 
Band Clustering for the Lossless Compression of AVIRIS Hyperspectral Images
IDES Editor
 
Microelectronic Circuit Analogous to Hydrogen Bonding Network in Active Site ...
IDES Editor
 
Texture Unit based Monocular Real-world Scene Classification using SOM and KN...
IDES Editor
 
Mental Stress Evaluation using an Adaptive Model
IDES Editor
 

Recently uploaded (20)

PPTX
Enabling the Digital Artisan – keynote at ICOCI 2025
Alan Dix
 
PDF
LLM Search Readiness Audit - Dentsu x SEO Square - June 2025.pdf
Nick Samuel
 
PDF
Python Conference Singapore - 19 Jun 2025
ninefyi
 
PDF
Why aren't you using FME Flow's CPU Time?
Safe Software
 
PDF
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
PDF
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
PDF
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
PDF
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
PPTX
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
PPTX
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
PDF
From Chatbot to Destroyer of Endpoints - Can ChatGPT Automate EDR Bypasses (1...
Priyanka Aash
 
PDF
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
PDF
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
PDF
UiPath Agentic AI ile Akıllı Otomasyonun Yeni Çağı
UiPathCommunity
 
PPTX
Practical Applications of AI in Local Government
OnBoard
 
PDF
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
PDF
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
PPTX
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
PDF
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
Earley Information Science
 
Enabling the Digital Artisan – keynote at ICOCI 2025
Alan Dix
 
LLM Search Readiness Audit - Dentsu x SEO Square - June 2025.pdf
Nick Samuel
 
Python Conference Singapore - 19 Jun 2025
ninefyi
 
Why aren't you using FME Flow's CPU Time?
Safe Software
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
“MPU+: A Transformative Solution for Next-Gen AI at the Edge,” a Presentation...
Edge AI and Vision Alliance
 
Automating the Geo-Referencing of Historic Aerial Photography in Flanders
Safe Software
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
From Chatbot to Destroyer of Endpoints - Can ChatGPT Automate EDR Bypasses (1...
Priyanka Aash
 
Optimizing the trajectory of a wheel loader working in short loading cycles
Reno Filla
 
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
UiPath Agentic AI ile Akıllı Otomasyonun Yeni Çağı
UiPathCommunity
 
Practical Applications of AI in Local Government
OnBoard
 
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Poster...
Michele Kryston
 
Hello I'm "AI" Your New _________________
Dr. Tathagat Varma
 
Simplifica la seguridad en la nube y la detección de amenazas con FortiCNAPP
Cristian Garcia G.
 
EIS-Webinar-Engineering-Retail-Infrastructure-06-16-2025.pdf
Earley Information Science
 

Evolutionary Testing Approach for Solving Path- Oriented Multivariate Problems

  • 1. Short Paper ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013 Evolutionary Testing Approach for Solving Path- Oriented Multivariate Problems P.Maragathavalli1 and S.Kanmani2 1 Pondicherry Engineering College /Department of Information Technology, Puducherry, India E-mail:[email protected] 2 Pondicherry Engineering College /Department of Information Technology, Puducherry, India E-mail:[email protected] Abstract— A multivariate approach involves varying number mation of multiple fitness values named random weighted of objectives to be satisfied simultaneously in testing process. genetic algorithm (RWGA); another approach is consider- An evolutionary approach, genetic algorithm is taken for ing multiple objectives at a time and generating Pareto opti- solving multivariate problems in software engineering. The mal solution set named diversity based or non-dominated Multivariate Optimization Problem (M OP) has a set of sorting genetic algorithm (NSGA) [4] [7] [8]. solutions, each of which satisfies the objectives at an acceptable level. Another evolutionary algorithm named SBGA (stage- based genetic algorithm) with two stages is attempted for II. EXISTING METHODS solving problems with multiple objectives like cost Genetic algorithms are the most popular heuristic minimization, time reduction and maximizing early fault technique to solve Multi-Objective Optimization Problems deduction capabilities. In this paper, a multivariate genetic algorithm (MGA) in terms of stages for path-based programs [2]. A Multi-Objective Optimization Problem has a number of is presented to get the benefits of both multi-criteria objective functions, which are to be minimized or maximized. optimization and genetic algorithm. The multiple variables MOOP can be expressed as, fitness function fm(x), where m = considered for test data generation are maximum path coverage 1, 2, 3… M no. of objective functions & x = single candidate with minimum execution time and test-suite minimization. solution. The methods [1] [4] used for multi-objective The path coverage and the no. of test cases generated using optimization are ranking, diversity and combined approach, SBGA are experimented with low, medium and high complexity NRGA [5]. object-oriented programs and compared with the existing GA approaches. The data-flow testing of OOPs in terms of path III. STAGE-BASED GENETIC ALGORITHM (SBGA) coverage are resulted with almost 88%. Thus, the efficiency of generated testcases has been improved in terms of path The design diagram of stage-based genetic algorithm by coverage with minimum execution time as well as with the considering multiple objectives for stage-wise optimization minimal test suite size. is shown in Fig. 1. In this paper, the multi-objective optimization using SBGA is attempted by changing the GA Index Terms— multivariate problems, stage-based genetic al gori thm, p ath coverag e, executi on time, test-sui te operations with various GA parameter values. Instead of reduction, evolutionary testing. two-point crossover and mutation, uniform crossover and SBGA i.e. non-dominated sorting genetic algorithm [2] [6] I. INTRODUCTION which use two stages in generating test cases.The test case selection for next generation uses ranking of fitness values. Evolutionary algorithms which are more advanced heu- By seeing the dominance between test cases, the test case is ristic search techniques have been successfully applied in being selected for next iteration. In one-stage, sequencing the area of software testing. For a large search space and of methods will take place and in another-stage the values getting optimal set of solutions GA is the best choice in soft- will be passed to methods. ware testing. Commonly, these techniques are referred as evolutionary testing. Evolutionary testing tries to improve A. Input Representation the effectiveness and efficiency of the testing process by The input representation is in the form of control flow transforming testing objectives into search problems, and graphs (CFGs) and the output will be the generated test cases. applying evolutionary similarity mutation is taken as new GA CFG will give the dependencies between variables associated operators. Approaches, like ideal and preference are used in with specific nodes. Control-flow graph of classes (CCFG) computation in order to solve them. In this testing of soft- For representing test objects in object-oriented programs by ware can be done with a single objective or with multiple using CFGs in which a directed graph G = (N, E) where nodes objectives [1][3]. Instead of fixing only one criteria or quality represent methods and edges represent procedure calls. The parameter for generating test cases, multiple objectives like class control-flow graph (CCFG) is a class-call graph [2] [6] in minimizing the time & cost and no. of test cases simulta- which each node is replaced with the control-flow graph of neously maximizing the coverage (i.e., the test requirements) the corresponding method and all methods of the class are would be considered. The techniques used in GA for multi- connected together by edges. criteria optimization are of two types: one approach is sum Control-flow graph of classes (CCFG) © 2013 ACEEE 54 DOI: 01.IJIT.3.1. 1100
  • 2. Short Paper ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013 For representing test objects in object-oriented programs by using CFGs in which a directed graph G = (N, E) where nodes represent methods and edges represent procedure calls. The class control-flow graph (CCFG) is a class-call graph [2] [6] in which each node is replaced with the control-flow graph of the corresponding method and all methods of the class are connected together by edges. Fig. 2. Stack program as an example parents go to offspring. The mutation is done using similarity Fig. 1. Stage-Based Genetic Algorithm – An Evolutionary Approach mutation in which a similar gene is replaced with a different test case. B. Test criteria and Chromosome Representation TABLE I. GA OPERATORS The test criteria for generating test cases consists of a triple [d, u, a] where‘d’ def_node, ‘u’ use_node & ‘a’ associated variable. For example, consider the stack program with single class in Fig. 2; the criteria will be of the form [7, 11, top]. A test case consists of a sequence of methods invocation appended by their parameter values [1][2]. The ‘chromosome’ for a given criteria [d, u, a] contains the following: Invocation of a constructor ‘c’ Fitness function ft(vi) = ½(cov_d / tot_d) + ½(cov_u / tot_u) Method md that causes the execution of ‘d’ * I = no. of chromosomes in next generation / no. of Method mu that causes the execution of ‘u’ chromosomes in current generation Values to the parameters ‘v’ TABLE II. GA PARAMETERS C. Test Data Generation The parameters and operators considered for test data generation in GA, their initial and range of values are tabulated in tableI and the results are shown in table II. The crossover used for getting the offsprings is uniform crossover which uses a fixed mixing ratio between two parents. For example, if the mixing ratio is 0.5, then half of the genes from both the © 2013 ACEEE 55 DOI: 01.IJIT.3.1.1100
  • 3. Short Paper ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013 IV. EXPERIMENT covers only 87%. For print-token2, SBGA covers 96% with ET = 5140ms and GA 86% with 5990ms. The parameter A. Test Data Immigration rate, ‘I’ value should be minimum; since the ‘I’ Initially, simple java programs upto 200 lines of code are value is taken from the difference between the current experimented with various coverage criterions. The results generation test cases (chromosomes) and the initial test are satisfactory, and then five programs from Software cases, the value of new generation chromosomes should be Infrastructure Repository with equal complexity are taken for minimum. experiment; the lines of code are from the range (200-800). For example, when 10 test cases is reduced to 4, the value The no of classes are in the range of (1, 2, 4 … 24) and the will be 0.4; reduced to 3, then 0.3; so, when I is less, small no branches of upto 60 are taken for experimentation. No. of of test cases are resulted; I is high, optimal set contains more generations is from 95 to 150 with the interval of 5; one era no. of test cases; i.e. I = 4/10 = 0.4 ; I = 3/10 = 0.3; I = 5/10 can have max. of 30 generations. The path coverage is = 0.5. The value 10 is only for an example; so, it need not be predicted as a ratio between the conditions covered by the 10; 8/20 or some, 6/20 etc. On the whole, the no. of conditions total no. of conditions in the tested program and presented satisfied by SBGA is more when compared to GA and is the in %. results are tabulated in table III. B. Result Analysis The execution time variation for both SBGA and GA is shown in graph 1; Test data generation time for each program Programs like array-partition, ordset, replace, and varies from 2200 – 5990 ms. When no of classes and variables schedule2 gives better coverage results in fast execution; are more, the time is also be more; the conditions to be because, the number of conditions to be checked for selecting checked by test data increases, execution time will also be test cases are less whereas in print-token2 and traffic collision increased directly. Search time is a main criterion in GA for avoidance system (TCAS) type of programs classes and test data generation. So, that should be minimized. By using conditions are more almost 60, so takes more time for execution. SBGA, the overall testing time is reduced by minimizing the In TCAS, each and every vehicle should be monitored to total no of test cases generated. Reduction in test suite in order to avoid collision; so, takes more time to run the system terms of immigration rate ‘I’ is also shown in graph 1. Total no with execution time of 4265ms in SBGA whereas GA takes of chromosomes reduction is reflected in ‘I’; initially, the rate 4912ms. The path coverage results are 97% in SBGA, GA TABLE III. RESULTS OBTAINED FOR SAMPLE JAVA PROGRAMS © 2013 ACEEE 56 DOI: 01.IJIT.3.1.1100
  • 4. Short Paper ACEEE Int. J. on Information Technology, Vol. 3, No. 1, March 2013 Graph. 1. Execution time in ms and Immigration rate ‘I’ results in SBGA and GA is fixed as 0.3-0.9. In real scenario, SBGA ranges from 0.3-0.5 [2] Ahmed S. Ghiduk, “Automatic Generation of Object-Oriented only; the comparison in immigration rate of SBGA with GA is Tests with a Multistage-Based Genetic Algorithm,” Journal also shown in graph1. So, the test data generated using stage- of computers, Vol. 5, No. 10, pp. 1560-1569, October 2010. [3] Dhirendra Pal Singh, AshishKhare, “Different Aspects of based genetic algorithm by simultaneously satisfying multiple Evolutionary Algorithms, Multi-Objective Optimization objectives has been implemented and tested with different Algorithms and Application Domain,” International Journal data sets. of Advanced Networking and Applications, Vol. 2, Iss.04, pp. 770-775, 2011. CONCLUSION [4] Abdullah Konak, David W. Coit, and Alice E. Smith, “Multi- objective optimization using genetic algorithms: A tutorial,” Thus, the multivariate genetic algorithm with two stages Reliability Engineering and System Safety, Elsevier, pp. 992- SBGA is used for generation of object-oriented test cases. 1007, January 2006. The fitness is purely depends on the path coverage of the [5] Omar Al Jadaan, Lakishmi Rajamani, and C. R. Rao, “Non- test cases in the class. The results for sample java programs dominated Ranking Genetic Algorithm for solving Multi- show that the efficiency and effectiveness of test cases Objective Optimization Problems: NRGA,” Journal of generated by SBGA in terms of path coverage. In addition to Theoretical and Applied Information Technology, pp. 60-67, path coverage, the time required for execution and the 2008. immigration rate are also satisfactory. This algorithm satisfies [6] Andreas S.Andreou, Kypros A. Economides and Anastasis A. Sofokleous, “An Automatic software test-data generation more than one variable in terms of objective simultaneously scheme based on data flow criteria and genetic algorithms,” 7th and tested with various sample program sets. The results International Conference on Computer and Information can also be compared with other java packages for similar Technology, pp. 867-872, 2007. type of problems. [7] Kalyanmoy Deb, “Multi-Objective Optimization Using Evolutionary Algorithms: An Introduction,” Technical Report REFERENCES 2011003, Indian Institute of Technology Kanpur, February 2011. [1] Anon Sukstrienwong, “Solving multi-objective optimization [8] Yuanyuan Zhang, “Multi-Objective Search-Based Requirements under bounds by genetic algorithms,” International Journal of Selection and Optimization,” Ph.D Thesis, University of Computers, Vol.5, Iss.1, pp. 18-25, 2011. London, pp. 1-276, February 2010. © 2013 ACEEE 57 DOI: 01.IJIT.3.1. 1100