A Method Dependence Relations Guided Genetic Algorithm

  • Ali AburasEmail author
  • Alex Groce
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9962)


Search based test generation approaches have already been shown to be effective for generating test data that achieves high code coverage for object-oriented programs. In this paper, we present a new search-based approach, called GAMDR, that uses a genetic algorithm (GA) to generate test data. GAMDR exploits method dependence relations (MDR) to narrow down the search space and direct mutation operators to the most beneficial regions for achieving high branch coverage. We compared GAMDR’s effectiveness with random testing, EvoSuite, and a simple GA. The tests generated by GAMDR achieved higher branch coverage.


SBST Genetic algorithm Search space reduction Java testing 


  1. 1.
    Aburas, A., Groce, A.: An improved memetic algorithm with method dependence relations (mamdr). In: Quality Software (QSIC), pp. 11–20. IEEE (2014)Google Scholar
  2. 2.
    Arcuri, A.: It really does matter how you normalize the branch distance in search-based software testing. Softw. Test. Verification Reliab. 23(2), 119–147 (2013)CrossRefGoogle Scholar
  3. 3.
    Arcuri, A., Yao, X.: A memetic algorithm for test data generation of object-oriented software. In: Evolutionary Computation, pp. 2048–2055. IEEE (2007)Google Scholar
  4. 4.
    Baresi, L., Lanzi, P.L., Miraz, M.: Testful: an evolutionary test approach for Java. In: Software Testing, Verification and Validation (ICST), pp. 185–194. IEEE (2010)Google Scholar
  5. 5.
    Ciupa, I., Leitner, A., Oriol, M., Meyer, B.: Artoo. In: Software Engineering, ICSE 2008, pp. 71–80. IEEE (2008)Google Scholar
  6. 6.
    Fraser, G., Arcuri, A.: Handling test length bloat. Softw. Test. Verification Reliab. 23(7), 553–582 (2013)CrossRefGoogle Scholar
  7. 7.
    Fraser, G., Arcuri, A.: Whole test suite generation. IEEE Trans. Softw. Eng. 39(2), 276–291 (2013)CrossRefGoogle Scholar
  8. 8.
    Groce, A., Fern, A., Pinto, J., Bauer, T., Alipour, A., Erwig, M., Lopez, C.: Lightweight automated testing with adaptation-based programming. In: Software Reliability Engineering (ISSRE), pp. 161–170. IEEE (2012)Google Scholar
  9. 9.
    Harman, M., Hassoun, Y., Lakhotia, K., McMinn, P., Wegener, J.: The impact of input domain reduction on search-based test data generation. In: Proceedings of the ACM SIGSOFT Symposium, pp. 155–164. ACM (2007)Google Scholar
  10. 10.
    Harman, M., Islam, F., Xie, T., Wappler, S.: Automated test data generation for aspect-oriented programs. In: Proceedings of the Aspect-Oriented Software Development, pp. 185–196. ACM (2009)Google Scholar
  11. 11.
    McMinn, P.: Search-based software test data generation: a survey. Softw. Test. Verification Reliab. 14(2), 105–156 (2004)CrossRefGoogle Scholar
  12. 12.
    Ribeiro, J.C.B., Zenha-Rela, M.A., de Vega, F.F.: Test case evaluation and input domain reduction strategies for the evolutionary testing of object-oriented software. Inf. Softw. Technol. 51, 1534–1548 (2009)CrossRefGoogle Scholar
  13. 13.
    Sălcianu, A., Rinard, M.: Purity and side effect analysis for Java programs. In: Cousot, R. (ed.) VMCAI 2005. LNCS, vol. 3385, pp. 199–215. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  14. 14.
    Zhang, S., Saff, D., Bu, Y., Ernst, M.D.: Combined static and dynamic automated test generation. In: Proceedings of the 2011 International Symposium on Software Testing and Analysis, pp. 353–363. ACM (2011)Google Scholar

Copyright information

© Springer International Publishing AG 2016

Authors and Affiliations

  1. 1.Oregon State UniversityCorvallisUSA

Personalised recommendations