Call for Paper - January 2023 Edition
IJCA solicits original research papers for the January 2023 Edition. Last date of manuscript submission is December 20, 2022. Read More

Review of Genetic Algorithm and Application in Software Testing

Print
PDF
International Journal of Computer Applications
Foundation of Computer Science (FCS), NY, USA
Year of Publication: 2017
Authors:
Patrick Kwaku Kudjo, Elias Nii Noi Ocquaye, Wolali Ametepe
10.5120/ijca2017912965

Patrick Kwaku Kudjo, Elias Nii Noi Ocquaye and Wolali Ametepe. Review of Genetic Algorithm and Application in Software Testing. International Journal of Computer Applications 160(2):1-6, February 2017. BibTeX

@article{10.5120/ijca2017912965,
	author = {Patrick Kwaku Kudjo and Elias Nii Noi Ocquaye and Wolali Ametepe},
	title = {Review of Genetic Algorithm and Application in Software Testing},
	journal = {International Journal of Computer Applications},
	issue_date = {February 2017},
	volume = {160},
	number = {2},
	month = {Feb},
	year = {2017},
	issn = {0975-8887},
	pages = {1-6},
	numpages = {6},
	url = {http://www.ijcaonline.org/archives/volume160/number2/27042-2017912965},
	doi = {10.5120/ijca2017912965},
	publisher = {Foundation of Computer Science (FCS), NY, USA},
	address = {New York, USA}
}

Abstract

The recent technological advancement and complexity of software makes it very difficult to maintain and improve the quality of software. Software testing is a technique used in validating and verifying that a develop software meets it requirements and specification hence the need to properly generate suitable test case to test programs. Software testing consumers a lot of time, effort and money, therefore the focus of testing largely depends on test case generation, execution and evaluation. Automated testing is a technique used to maximize test coverage, detect more errors, increase test execution, decrease cost as well as improving the quality of software. This paper reviews the use of Genetic algorithm to automatically generate test case using the random method.

References

  1. H. D. Mills, M. Dyer, and R. C. Linger, "Cleanroom software engineering," IEEE Software, vol. 4, p. 19, 1987.
  2. J. Voas, L. Morell, and K. Miller, "Predicting where faults can hide from testing," IEEE Software, vol. 8, pp. 41-48, 1991.
  3. P. Thevenod-Fosse and H. Waeselynck, "STATEMATE applied to statistical software testing," in ACM SIGSOFT Software Engineering Notes, 1993, pp. 99-109.
  4. L. A. Clarke, "A system to generate test data and symbolically execute programs," IEEE Transactions on software engineering, pp. 215-222, 1976.
  5. R. S. Boyer, B. Elspas, and K. N. Levitt, "SELECT—a formal system for testing and debugging programs by symbolic execution," ACM SigPlan Notices, vol. 10, pp. 234-245, 1975.
  6. R. DeMilli and A. J. Offutt, "Constraint-based automatic test data generation," IEEE Transactions on Software Engineering, vol. 17, pp. 900-910, 1991.
  7. B. Korel, "Automated software test data generation," IEEE Transactions on software engineering, vol. 16, pp. 870-879, 1990.
  8. I. Hermadi and M. A. Ahmed, "Genetic algorithm based test data generator," in Evolutionary Computation, 2003. CEC'03. The 2003 Congress on, 2003, pp. 85-91.
  9. M. Prasanna, S. Sivanandam, R. Venkatesan, and R. Sundarrajan, "A survey on automatic test case generation," Academic Open Internet Journal, vol. 15, 2005.
  10. N. Kosindrdecha and J. Daengdej, "A test case generation process and technique," J. Software Eng, vol. 4, pp. 265-287, 2010.
  11. N. Kaushik, K. Choudhary, and N. S. Yadav, "Year of Publication: 2016."
  12. N. Kosindrdecha and J. Daengdej, "A TEST CASE GENERATION TECHNIQUE AND PROCESS," in International Workshop on Design, Evaluation and Refinement of Intelligent Systems (DERIS2010), 2010, p. 59.
  13. M. G. Xu, Y. M. Mu, Z. H. Zhang, and A. Liu, "Research on Automatic Test Case Generation Framework for Java," in Applied Mechanics and Materials, 2014, pp. 1488-1496.
  14. H.-H. Sthamer, "The automatic generation of software test data using genetic algorithms," University of Glamorgan, 1995.
  15. R. P. Pargas, M. J. Harrold, and R. R. Peck, "Test-data generation using genetic algorithms," Software Testing Verification and Reliability, vol. 9, pp. 263-282, 1999.
  16. J. H. Andrews, A. Groce, M. Weston, and R.-G. Xu, "Random test run length and effectiveness," in Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, 2008, pp. 19-28.
  17. G. Myers, "The Art of Software Testing. revised and updated by T. Badgett and TM Thomas with C. Sandler," ed: John Wiley & Sons, Inc, 2004.
  18. R. Hamlet, "Random testing," Encyclopedia of software Engineering, 1994.
  19. Z. W. Geem, J. H. Kim, and G. Loganathan, "A new heuristic optimization algorithm: harmony search," Simulation, vol. 76, pp. 60-68, 2001.
  20. D. Beasley, D. R. Bull, and R. R. Martin, "An overview of genetic algorithms: Part 1, fundamentals," University computing, vol. 15, pp. 56-69, 1993.
  21. H. Bati, L. Giakoumakis, S. Herbert, and A. Surna, "A genetic approach for random testing of database systems," in Proceedings of the 33rd international conference on Very large data bases, 2007, pp. 1243-1251.
  22. S. Suman, "A genetic algorithm for regression test sequence optimization," Int. J. Adv. Res. Comput. Commun. Eng, vol. 1, 2012.
  23. C. Sharma, S. Sabharwal, and R. Sibal, "A survey on software testing techniques using genetic algorithm," arXiv preprint arXiv:1411.1154, 2014.
  24. E. D. Goodman, "Introduction to genetic algorithms," in Proceedings of the Companion Publication of the 2014 Annual Conference on Genetic and Evolutionary Computation, 2014, pp. 205-226.
  25. L. J. Fogel, A. J. Owens, and M. J. Walsh, "Artificial intelligence through simulated evolution," 1966.
  26. H.-G. Beyer and H.-P. Schwefel, "Evolution strategies–A comprehensive introduction," Natural computing, vol. 1, pp. 3-52, 2002.
  27. I. Rechenberg, "Evolution Strategy: Optimization of Technical systems by means of biological evolution," Fromman-Holzboog, Stuttgart, vol. 104, 1973.
  28. A. K. Qin, V. L. Huang, and P. N. Suganthan, "Differential evolution algorithm with strategy adaptation for global numerical optimization," IEEE transactions on Evolutionary Computation, vol. 13, pp. 398-417, 2009.
  29. K. E. Kinnear Jr, "A perspective on the work in this book," Advances in Genetic Programming, pp. 3-19, 1994.
  30. S. Shennan, "Genes, memes, and human history: Darwinian archaeology and cultural evolution," 2002.
  31. J. H. Holland, "Genetic algorithms," Scientific american, vol. 267, pp. 66-72, 1992.
  32. J. D. Bagley, "The behavior of adaptive systems which employ genetic and correlation algorithms," 1967.
  33. G. J. Friedman, "Digital simulation of an evolutionary process," General Systems Yearbook, vol. 4, 1959.
  34. D. B. Fogel, "An introduction to simulated evolutionary optimization," IEEE transactions on neural networks, vol. 5, pp. 3-14, 1994.
  35. K. De Jong, "Genetic algorithm based learning," 1990.
  36. K. A. De Jong, "Genetic algorithms are NOT function optimizers," Foundations of genetic algorithms, vol. 2, pp. 5-17, 1993.
  37. H. J. Bremermann, The evolution of intelligence: The nervous system as a model of its environment: University of Washington, Department of Mathematics, 1958.
  38. E. Falkenauer, Genetic algorithms and grouping problems: John Wiley & Sons, Inc., 1998.
  39. D. E. Goldberg, "Genetic algorithms in search, optimization and machine learning ‘addison-wesley, 1989," Reading, MA, 1989.
  40. L. Davis, "Handbook of genetic algorithms," 1991.
  41. J. A. Joines and C. R. Houck, "On the use of non-stationary penalty functions to solve nonlinear constrained optimization problems with GA's," in Evolutionary Computation, 1994. IEEE World Congress on Computational Intelligence., Proceedings of the First IEEE Conference on, 1994, pp. 579-584.
  42. M. Mitchell, "Genetic algorithms: An overview," Complexity, vol. 1, pp. 31-39, 1995.
  43. J. F. Gonçalves, J. J. de Magalhães Mendes, and M. c. G. Resende, "A hybrid genetic algorithm for the job shop scheduling problem," European journal of operational research, vol. 167, pp. 77-95, 2005.
  44. K. Sastry, D. E. Goldberg, and G. Kendall, "Genetic algorithms," in Search methodologies, ed: Springer, 2014, pp. 93-117.
  45. M. Mitchell, An introduction to genetic algorithms: MIT press, 1998.
  46. A. P. Engelbrecht, Fundamentals of computational swarm intelligence: John Wiley & Sons, 2006.
  47. S. Sivanandam and S. Deepa, Introduction to genetic algorithms: Springer Science & Business Media, 2007.
  48. J. Stender, "Introduction to genetic algorithms," in Applications of Genetic Algorithms, IEE Colloquium on, 1994, pp. 1/1-1/4.
  49. S. A. Kazarlis, A. Bakirtzis, and V. Petridis, "A genetic algorithm solution to the unit commitment problem," IEEE transactions on power systems, vol. 11, pp. 83-92, 1996.
  50. A. Baresel, H. Sthamer, and M. Schmidt, "Fitness function design to improve evolutionary structural testing," in Proceedings of the 4th Annual Conference on Genetic and Evolutionary Computation, 2002, pp. 1329-1336.
  51. D. E. Goldberg and K. Deb, "A comparative analysis of selection schemes used in genetic algorithms," Foundations of genetic algorithms, vol. 1, pp. 69-93, 1991.
  52. M. Srinivas and L. M. Patnaik, "Genetic algorithms: A survey," Computer, vol. 27, pp. 17-26, 1994.
  53. B. L. Miller and D. E. Goldberg, "Genetic algorithms, tournament selection, and the effects of noise," Complex systems, vol. 9, pp. 193-212, 1995.
  54. M. Srinivas and L. M. Patnaik, "Adaptive probabilities of crossover and mutation in genetic algorithms," IEEE Transactions on Systems, Man, and Cybernetics, vol. 24, pp. 656-667, 1994.
  55. U. Bodenhofer, "Genetic algorithms: theory and applications," ed: Lecture notes, Fuzzy Logic Laboratorium Linz-Hagenberg, Winter, 2003.
  56. C. Reeves, "Genetic algorithms," in Handbook of metaheuristics, ed: Springer, 2003, pp. 55-82.
  57. N. Soni and T. Kumar, "Study of various mutation operators in genetic algorithms," IJCSIT) International Journal of Computer Science and Information Technologies, vol. 5, pp. 4519-4521, 2014.
  58. L. Davis, "Applying adaptive algorithms to epistatic domains," in IJCAI, 1985, pp. 162-164.
  59. D. E. Goldberg, Genetic algorithms: Pearson Education India, 2006.
  60. D. Beasley, D. R. Bull, and R. R. Martin, "An overview of genetic algorithms: Part 2, research topics," University computing, vol. 15, pp. 170-181, 1993.
  61. J. Itkonen, M. V. Mantyla, and C. Lassenius, "How do testers do it? An exploratory study on manual testing practices," in Proceedings of the 2009 3rd International Symposium on Empirical Software Engineering and Measurement, 2009, pp. 494-497.
  62. C. M. Miller, "Automated testing system," ed: Google Patents, 1995.
  63. C. C. Michael, G. E. McGraw, M. A. Schatz, and C. C. Walton, "Genetic algorithms for dynamic test data generation," in Automated Software Engineering, 1997. Proceedings., 12th IEEE International Conference, 1997, pp. 307-308.
  64. D. E. Goldberg, Optimal initial population size for binary-coded genetic algorithms: Clearinghouse for Genetic Algorithms, Department of Engineering Mechanics, University of Alabama, 1985.
  65. C. R. Reeves, "Using Genetic Algorithms with Small Populations," in ICGA, 1993, p. 92.
  66. C. W. Ahn and R. S. Ramakrishna, "A genetic algorithm for shortest path routing problem and the sizing of populations," IEEE transactions on evolutionary computation, vol. 6, pp. 566-579, 2002.
  67. J. Horn, N. Nafpliotis, and D. E. Goldberg, "A niched Pareto genetic algorithm for multiobjective optimization," in Evolutionary Computation, 1994. IEEE World Congress on Computational Intelligence., Proceedings of the First IEEE Conference on, 1994, pp. 82-87.
  68. P. A. Diaz-Gomez and D. F. Hougen, "Initial Population for Genetic Algorithms: A Metric Approach," in GEM, 2007, pp. 43-49.
  69. D. J. Berndt and A. Watkins, "Investigating the performance of genetic algorithm-based software test case generation," in High Assurance Systems Engineering, 2004. Proceedings. Eighth IEEE International Symposium on, 2004, pp. 261-262.
  70. A. Sharma, R. Patani, and A. Aggarwal, "SOFTWARE TESTING USING GENETIC ALGORITHMS."
  71. D. E. Goldberg and J. H. Holland, "Genetic algorithms and machine learning," Machine learning, vol. 3, pp. 95-99, 1988.
  72. K. A. De Jong, W. M. Spears, and D. F. Gordon, "Using genetic algorithms for concept learning," in Genetic Algorithms for Machine Learning, ed: Springer, 1993, pp. 5-32.
  73. A. Peterson, J. Soberón, and V. Sánchez-Cordero, "Conservatism of ecological niches in evolutionary time," Science, vol. 285, pp. 1265-1267, 1999.
  74. M. Brameier and W. Banzhaf, "A comparison of linear genetic programming and neural networks in medical data mining," IEEE Transactions on Evolutionary Computation, vol. 5, pp. 17-26, 2001.
  75. E. A. Sconce, T. I. Khan, H. A. Wynne, P. Avery, L. Monkhouse, B. P. King, et al., "The impact of CYP2C9 and VKORC1 genetic polymorphism and patient characteristics upon warfarin dose requirements: proposal for a new dosing regimen," Blood, vol. 106, pp. 2329-2333, 2005.
  76. J. T. Alander and T. Mantere, "Automatic software testing by genetic algorithm optimization, a case study," in Proceedings of the 1st International Workshop on Soft Computing Applied to Software Engineering, 1999, pp. 1-9.
  77. R. Kumar, S. Singh, and G. Gopal, "Automatic Test Case Generation Using Genetic Algorithm," International Journal of Scientific & Engineering Research (IJSER), vol. 4, pp. 1135-1141, 2013.
  78. K. Singh and R. Kumar, "Optimization of functional testing using Genetic algorithms," International Journal of Innovation, Management and Technology, vol. 1, p. 43, 2010.
  79. F. S. Babamir, A. Hatamizadeh, S. M. Babamir, M. Dabbaghian, and A. Norouzi, "Application of genetic algorithm in automatic software testing," in International Conference on Networked Digital Technologies, 2010, pp. 545-552.
  80. S. P. Tripathy and D. Kanhar, "Optimization of Software Testing for Discrete Testsuite using Genetic Algorithm and Sampling Technique," International Journal of Computer Applications, vol. 63, 2013.
  81. J. McCart, D. Berndt, and A. Watkins, "Using genetic algorithms for software testing: Performance improvement techniques," AMCIS 2007 Proceedings, p. 222, 2007.
  82. N. K. Gupta and M. K. Rohil, "Using genetic algorithm for unit testing of object oriented software," in 2008 First International Conference on Emerging Trends in Engineering and Technology, 2008, pp. 308-313.
  83. S. Wappler and F. Lammermann, "Using evolutionary algorithms for the unit testing of object-oriented software," in Proceedings of the 7th annual conference on Genetic and evolutionary computation, 2005, pp. 1053-1060.
  84. P. Tonella, "Evolutionary testing of classes," in ACM SIGSOFT Software Engineering Notes, 2004, pp. 119-128.
  85. A. Rauf, S. Anwar, M. A. Jaffer, and A. A. Shahid, "Automated GUI test coverage analysis using GA," in Information Technology: New Generations (ITNG), 2010 Seventh International Conference on, 2010, pp. 1057-1062.
  86. B. F. Jones, H.-H. Sthamer, and D. E. Eyres, "Automatic structural testing using genetic algorithms," Software Engineering Journal, vol. 11, pp. 299-306, 1996.

Keywords

Automated Testing; Genetic Algorithm; Evolutionary Algorithms; Random Testing; Test Case