Integrating Evolutionary Testing with Reinforcement Learning for Automated Test Generation of Object-Oriented Software
Integrating Evolutionary Testing with Reinforcement Learning for Automated Test Generation of Object-Oriented Software
复制标题
DOI:
10.1049/cje.2015.01.007
复制
发表时间:
2015
影响因子:
1.2
通讯作者:
Wei He;Ruilian Zhao;Qunxiong Zhu
中科院分区:
文献类型:
--
作者:
Wei He;Ruilian Zhao;Qunxiong Zhu
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 NPMand achieves higher branch coverage than two state-of-the-art test generation approaches within the same time budget.