Automated Test Case Generation Based on Differential Evolution With Relationship Matrix for iFogSim Toolkit

Fog computing plays an important role in industrial and information process. The programs in fog computing, such as iFogSim toolkit, usually contain some infeasible paths (paths that cannot be covered), which makes it impossible to compare algorithm in models that require covering all paths. In this paper, we proposed a mathematical model to build automated test case generation based on path coverage (ATCG-PC) in fog computing programs as a single-objective problem. Single objective helps to reduce the cost of evaluation functions, which is proportional to the number of test cases. When infeasible paths are contained in tested programs, algorithms can also be compared in this model. In this paper, classical differential evolution (DE) is used to solve the ATCG-PC. However, it is difficult for DE to use generated test cases covering remaining paths in the ATCG-PC of fog computing. Therefore, we proposed a test-case-path relationship matrix to empower DE (RP-DE). Experiment results show that RP-DE uses significantly less test cases and achieves higher path coverage rate than compared state-of-the-art algorithms.

[1]  Jin-Cherng Lin,et al.  Automatic test data generation for path testing using GAs , 2001, Inf. Sci..

[2]  Wenyin Gong,et al.  Adaptive Ranking Mutation Operator Based Differential Evolution for Constrained Optimization , 2015, IEEE Transactions on Cybernetics.

[3]  David Notkin,et al.  Symstra: A Framework for Generating Object-Oriented Unit Tests Using Symbolic Execution , 2005, TACAS.

[4]  Zhang Na,et al.  Automatic Generation of Test Cases Based On Multi-population Genetic Algorithm , 2015, MUE 2015.

[5]  Yaochu Jin,et al.  A Competitive Swarm Optimizer for Large Scale Optimization , 2015, IEEE Transactions on Cybernetics.

[6]  Wenyin Gong,et al.  Differential Evolution With Ranking-Based Mutation Operators , 2013, IEEE Transactions on Cybernetics.

[7]  Han Huang,et al.  Particle swarm optimization with convergence speed controller for large-scale numerical optimization , 2018, Soft Computing.

[8]  P. N. Suganthan,et al.  Differential Evolution Algorithm With Strategy Adaptation for Global Numerical Optimization , 2009, IEEE Transactions on Evolutionary Computation.

[9]  Xiaoyan Zhuo,et al.  Differential Evolution Based on Self-Adaptive Fitness Function for Automated Test Case Generation , 2017, IEEE Computational Intelligence Magazine.

[10]  R. Storn,et al.  Differential Evolution: A Practical Approach to Global Optimization (Natural Computing Series) , 2005 .

[11]  Wang Lijuan,et al.  Genetic Algorithms and Its Application in Software Test Data Generation , 2012, 2012 International Conference on Computer Science and Electronics Engineering.

[12]  Bo Tang,et al.  Incorporating Intelligence in Fog Computing for Big Data Analysis in Smart Cities , 2017, IEEE Transactions on Industrial Informatics.

[13]  Mark Harman,et al.  Software Engineering Meets Evolutionary Computation , 2011, Computer.

[14]  Marimuthu Palaniswami,et al.  Internet of Things (IoT): A vision, architectural elements, and future directions , 2012, Future Gener. Comput. Syst..

[15]  Ahmed S. Ghiduk,et al.  Automatic Data Flow Test Paths Generation using the Genetical Swarm Optimization Technique , 2015 .

[16]  James C. King,et al.  A new approach to program testing , 1974, Programming Methodology.

[17]  Myra B. Cohen,et al.  An orchestrated survey of methodologies for automated software test case generation , 2013, J. Syst. Softw..

[18]  Leandros Maglaras,et al.  Security and Privacy in Fog Computing: Challenges , 2017, IEEE Access.

[19]  Jie Wei,et al.  Genetic Algorithms and Its Application in Software Test Data Generation , 1998 .

[20]  Abdelhamid Bouchachia,et al.  An Immune Genetic Algorithm for Software Test Data Generation , 2007, 7th International Conference on Hybrid Intelligent Systems (HIS 2007).

[21]  Hongbin Dong,et al.  Automatic generation of software test data based on hybrid particle swarm genetic algorithm , 2012, 2012 IEEE Symposium on Electrical & Electronics Engineering (EEESYM).

[22]  D. Jeya Mala,et al.  Automated software test optimisation framework - an artificial bee colony optimisation-based approach , 2010, IET Softw..

[23]  Rainer Storn,et al.  Differential Evolution – A Simple and Efficient Heuristic for global Optimization over Continuous Spaces , 1997, J. Glob. Optim..

[24]  Nashat Mansour,et al.  Data Generation for Path Testing , 2004, Software Quality Journal.

[25]  Yoichi Hayashi,et al.  Neural expert system using fuzzy teaching input and its application to medical diagnosis , 1994 .

[26]  D. Jeya Mala,et al.  A non-pheromone based intelligent swarm optimization technique in software test suite optimization , 2009, 2009 International Conference on Intelligent Agent & Multi-Agent Systems.

[27]  Matthias Otto 5. Pattern Recognition and Classification , 2016 .

[28]  Yang Wang,et al.  Repairing the crossover rate in adaptive differential evolution , 2014, Appl. Soft Comput..

[29]  Janez Brest,et al.  Self-Adapting Control Parameters in Differential Evolution: A Comparative Study on Numerical Benchmark Problems , 2006, IEEE Transactions on Evolutionary Computation.

[30]  Victor C. M. Leung,et al.  Collaborative Location-Based Sleep Scheduling for Wireless Sensor Networks Integratedwith Mobile Cloud Computing , 2015, IEEE Transactions on Computers.

[31]  James H. Torrie,et al.  Principles and procedures of statistics: a biometrical approach (2nd ed) , 1980 .

[32]  Hong Zhu,et al.  Software unit test coverage and adequacy , 1997, ACM Comput. Surv..

[33]  Lionel C. Briand,et al.  A Systematic Review of the Application and Empirical Investigation of Search-Based Test Case Generation , 2010, IEEE Transactions on Software Engineering.

[34]  Mark Harman,et al.  Input Domain Reduction through Irrelevant Variable Removal and Its Effect on Local, Global, and Hybrid Search-Based Structural Test Data Generation , 2012, IEEE Transactions on Software Engineering.

[35]  Santanu Kumar Rath,et al.  A Genetic Algorithm based Approach for Test Data Generation in Basis Path Testing , 2014, ArXiv.

[36]  Michael R. Lyu,et al.  Achieving software quality with testing coverage measures , 1994, Computer.

[37]  Gordon Fraser,et al.  Whole Test Suite Generation , 2013, IEEE Transactions on Software Engineering.

[38]  Rajkumar Buyya,et al.  iFogSim: A toolkit for modeling and simulation of resource management techniques in the Internet of Things, Edge and Fog computing environments , 2016, Softw. Pract. Exp..

[39]  Mark Harman,et al.  A Theoretical and Empirical Study of Search-Based Testing: Local, Global, and Hybrid Search , 2010, IEEE Transactions on Software Engineering.

[40]  Ludmila I. Kuncheva,et al.  Pattern Recognition and Classification , 2014 .

[41]  Xiangjuan Yao,et al.  Test Data Generation for Multiple Paths Based on Local Evolution , 2015 .

[42]  Tie Qiu,et al.  Fog Computing Based Face Identification and Resolution Scheme in Internet of Things , 2017, IEEE Transactions on Industrial Informatics.

[43]  Raja Lavanya,et al.  Fog Computing and Its Role in the Internet of Things , 2019, Advances in Computer and Electrical Engineering.