Adaptive Reward Computation in Reinforcement Learning-Based Continuous Integration Testing

作者: Zheng Li , Ruilian Zhao , Yang Yang , Chaoyue Pan

DOI: 10.1109/ACCESS.2021.3063232

关键词:

摘要: Reinforcement learning (RL) has been applied to prioritizing test cases in Continuous Integration (CI) testing, where the reward plays a crucial role. It demonstrated that historical information-based function can improve effectiveness of case prioritization (TCP). However, inherent character frequent iterations CI produce considerable accumulation information, which may decrease TCP efficiency and result slow feedback. In this paper, partial information is considered computation, sliding window techniques are adopted capture possible efficient information. Firstly, fixed-size introduced set fixed length recent for each test. Then dynamic proposed, size continuously adaptive testing. Two methods suite-based individual case-based window. The empirical studies conducted on fourteen industrial-level programs, results reveal under limited time, window-based effectively effect, NAPFD (Normalized Average Percentage Faults Detected) Recall windows better than particular, approach rank 74.18% failed top 50% sorting sequence, with 1.35% improvement 6.66 positions increased TTF (Test Fail).

参考文章(40)
Zheng Li, Yi Bian, Ruilian Zhao, Jun Cheng, A Fine-Grained Parallel Multi-objective Test Case Prioritization on GPU Search Based Software Engineering. pp. 111- 125 ,(2013) , 10.1007/978-3-642-39742-4_10
Fang Yuan, Yi Bian, Zheng Li, Ruilian Zhao, Epistatic Genetic Algorithm for Test Case Prioritization symposium on search based software engineering. pp. 109- 124 ,(2015) , 10.1007/978-3-319-22183-0_8
Hema Srikanth, Charitha Hettiarachchi, Hyunsook Do, Requirements based test prioritization using risk factors Information & Software Technology. ,vol. 69, pp. 71- 83 ,(2016) , 10.1016/J.INFSOF.2015.09.002
Mathias Meyer, Continuous Integration and Its Tools IEEE Software. ,vol. 31, pp. 14- 16 ,(2014) , 10.1109/MS.2014.58
Sebastian Elbaum, Gregg Rothermel, John Penix, Techniques for improving regression testing in continuous integration development environments foundations of software engineering. pp. 235- 245 ,(2014) , 10.1145/2635868.2635910
Chu-Ti Lin, Cheng-Ding Chen, Chang-Shi Tsai, Gregory M. Kapfhammer, History-Based Test Case Prioritization with Software Version Awareness international conference on engineering of complex computer systems. pp. 171- 172 ,(2013) , 10.1109/ICECCS.2013.33
Sebastian Elbaum, Gregg Rothermel, Satya Kanduri, Alexey G. Malishevsky, Selecting a Cost-Effective Test Case Prioritization Technique Software Quality Journal. ,vol. 12, pp. 185- 210 ,(2004) , 10.1023/B:SQJO.0000034708.84524.22
Peter Dayan, Bernard W. Balleine, Reward, Motivation, and Reinforcement Learning Neuron. ,vol. 36, pp. 285- 298 ,(2002) , 10.1016/S0896-6273(02)00963-7
Dusica Marijan, Arnaud Gotlieb, Sagar Sen, Test Case Prioritization for Continuous Regression Testing: An Industrial Case Study international conference on software maintenance. pp. 540- 543 ,(2013) , 10.1109/ICSM.2013.91
G. Rothermel, R.H. Untch, Chengyun Chu, M.J. Harrold, Prioritizing test cases for regression testing IEEE Transactions on Software Engineering. ,vol. 27, pp. 929- 948 ,(2001) , 10.1109/32.962562