HE Wei, ZHAO Ruilian, ZHU Qunxiong. Integrating Evolutionary Testing with Reinforcement Learning for Automated Test Generation of Object-Oriented Software[J]. Chinese Journal of Electronics, 2015, 24(1): 38-45.
Citation: HE Wei, ZHAO Ruilian, ZHU Qunxiong. Integrating Evolutionary Testing with Reinforcement Learning for Automated Test Generation of Object-Oriented Software[J]. Chinese Journal of Electronics, 2015, 24(1): 38-45.

Integrating Evolutionary Testing with Reinforcement Learning for Automated Test Generation of Object-Oriented Software

Funds:  This work is supported by the National Natural Science Foundation of China (No.61073035, No.61170082).
More Information
  • Corresponding author: ZHAO Ruilian received the Ph.D. degree in computer science from Institute of Computing Technology, Chinese Academy of Sciences in 2001. She is now a professor and Ph.D. supervisor at Beijing University of Chemical Technology. Her primary research interests include software testing and fault-tolerant computing. (Email: rlzhao@mail.buct.edu.cn)
  • Received Date: 2012-12-01
  • Rev Recd Date: 2013-05-01
  • Publish Date: 2015-01-10
  • Recent advances in evolutionary test generation greatly facilitate the testing of Object-oriented (OO) software. Existing test generation approaches are still limited when the Software under test (SUT) includes Inherited class hierarchies (ICH) and Non-public methods (NPM). This paper presents an approach to generate test cases for OO software via integrating evolutionary testing with reinforcement learning. For OO software with ICH and NPM, two kinds of particular isomorphous substitution actions are presented and a Q-value matrix is maintained to assist the evolutionary test generation. A prototype called EvoQ is developed based on this approach and is applied to generate test cases for actual Java programs. Empirical results show that EvoQ can efficiently generate test cases for SUT with ICH and NPM and achieves higher branch coverage than two state-of-the-art test generation approaches within the same time budget.
  • loading
  • A. Arcuri and X. Yao, "On test data generation of objectoriented software", Proc. Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION, pp.72-76, 2007.
    C. Pacheco, S.K. Lahiri, M.D. Ernst and T. Ball, "Feedbackdirected random test generation", Proc. 29th International Conference on Software Engineering, pp.75-84, 2007.
    P. Tonella, "Evolutionary testing of classes", Proc. International Symposium on Software Testing and Analysis, pp.119- 128, 2004.
    A. Seesing and H.G. Grob, "A genetic programming approach to automated test generation for object-oriented software", ITSSA, Vol.1, No.2, pp.127-134, 2006.
    G. Fraser and A. Arcuri, "EvoSuite: Automatic test suite generation for object-oriented software", Proc. 19th ACM SIGSOFT Symposium and 13th European Conference on Foundations of Software Engineering, pp.416-419, 2011.
    L.P. Kaelbling, M.L. Littman and A.W. Moore, "Reinforcement learning: A survey", J. Artif. Int. Res., Vol.4, No.1, pp.237-285, 1996.
    R.S. Sutton and A.G. Barto, Introduction to Reinforcement Learning, Cambridge, MA, USA, 1998.
    P. McMinn, "Search-based software test data generation: A survey: Research articles", Softw. Test. Verif. Reliab., Vol.14, No.2, pp.105-156, 2004.
    J.H. Holland, Adaptation in Natural and Artificial Systems, Cambridge, MA, USA, 1992.
    J.R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection, Cambridge, MA, USA, 1992.
    J.Wegener, A. Baresel and H. Sthamer, "Evolutionary test environment for automatic structural testing", Information & Software Technology, Vol.43, pp.841-854, 2001.
    S. Wappler and J. Wegener, "Evolutionary unit testing of object-oriented software using strongly-typed genetic programming", Proc. 8th Annual Conference on Genetic and Evolutionary Computation, pp.1925-1932, 2006.
    C.J.C.H. Watkins and P. Dayan, "Q-learning", Mach. Learn., Vol.8, No.3-4, pp.279-292, 1992.
    G. Booch, Object-oriented Design with Applications, Addison- Wesley, Boston, MA, USA, 2007.
    A. Arcuri and G. Fraser, "On parameter tuning in search based software engineering", Proc. 3rd International Conference on Search Based Software Engineering, pp.33-47, 2011.
    C. Csallner and Y. Smaragdakis, "JCrasher: An automatic robustness tester for Java", Softw. Pract. Exper., Vol.34, pp.1025- 1050, 2004.
    J.H. Andrews, S. Haldar, Y. Lei and F.C.H. Li, "Tool support for randomized unit testing", Proc. 1st International Workshop on Random Testing, pp.36-45, 2006.
    L. Baresi and M. Miraz, "Testful: Automatic unit-test generation for java classes", Proc. 32nd International Conference on Software Engineering, pp.281-284, 2010.
    A. Arcuri, M.Z. Iqbal and L. Briand, "Random testing: Theoretical results and practical implications", IEEE Trans. Softw. Eng., Vol.38, No.2, pp.258-277, 2012.
    S. Ali, et al., "A systematic review of the application and empirical investigation of search-based test case generation", IEEE Trans. Softw. Eng., Vol.36, No.6, pp.742-762, 2010.
  • 加载中

Catalog

    通讯作者: 陈斌, bchen63@163.com
    • 1. 

      沈阳化工大学材料科学与工程学院 沈阳 110142

    1. 本站搜索
    2. 百度学术搜索
    3. 万方数据库搜索
    4. CNKI搜索

    Article Metrics

    Article views (193) PDF downloads(1092) Cited by()
    Proportional views
    Related

    /

    DownLoad:  Full-Size Img  PowerPoint
    Return
    Return