基于深度强化学习的软件持续集成测试优化技术研究

批准号:
61872026
项目类别:
面上项目
资助金额:
65.0 万元
负责人:
李征
依托单位:
学科分类:
F0203.软件理论、软件工程与服务
结题年份:
2022
批准年份:
2018
项目状态:
已结题
项目参与者:
郭俊霞、尤枫、卢罡、王微微、杨羊、席雁钊、王堃、韩金金、陈晨
国基评审专家1V1指导 中标率高出同行96.8%
结合最新热点,提供专业选题建议
深度指导申报书撰写,确保创新可行
指导项目中标800+,快速提高中标率
微信扫码咨询
中文摘要
持续集成作为软件产品敏捷式开发的最佳实践,被广泛应用于实际软件产品开发中。持续集成测试要求快速测试和快速反馈,是确保代码质量的核心措施。在有限的资源下,实现面向持续集成的测试优化是一个非常具有挑战性的任务。本项目将持续集成测试优化定义为一个测试用例选择与优先排序相结合的混合优化模型,即选择一个可以满足约束的测试用例子集,并优先执行潜在发现错误的测试用例,以达到快速高效的目的。从理论上,以序贯决策理论为媒介,设计一个深度强化学习与持续集成测试优化的相融合的模型,构建基于学习的持续集成测试优化理论支撑体系。从应用技术上,在研究以测试用例优先排序和选择分别为目标的强化学习方法的基础上,重点研究两者的协作交流机制,形成基于深度强化学习的持续集成测试混合优化方法。在理论和应用技术研究的基础上,建立面向实际应用的持续集成测试优化实践,为智能化软件持续集成测试优化提供理论、技术和应用示范的支撑。
英文摘要
As one of the best software agile development practice, Continuous Integration (CI) has been widely adopted. The regression testing for continuous integration, which demands a shorter testing cycle and faster response for the failed test case, is the critical step to ensure the code quality integrated into the master branch. The challenge is how to optimize test cases for continuous integration within limited resources. In this proposal, the optimization for continuous integration testing is first defined as a mixed model with test case prioritization and test case selection, i.e., simultaneous selection and prioritization for test cases to achieve the goal of the shorter testing cycle and faster response. This proposal proposes a theoretical model that integrates deep reinforcement learning and continuous integration testing, via sequential decision-making theory, which forms the foundation of learning based continuous integration testing. In the application techniques, the reinforcement learning based test case prioritization and the reinforcement learning based test case selection are studied respectively first. Then, the cooperation and communication of these two approaches are explored for the mixed test case optimization for continuous integration testing. At last, a demonstration application satisfying the industrial requirements in continuous testing optimization will be built up based on the research of theories and applied technologies, where the achievements can provide strong theoretical, technical support and demonstration for intelligent integration testing.
敏捷式开发是一种频繁集成、快速反馈的持续集成开发模式,已被广泛应用于实际软件产品开发中。持续集成测试是确保代码质量的核心措施,但由于持续集成环境随着迭代连续变更,传统回归测试用例优化相关技术难以适用。本课题从理论上将持续集成测试用例优先排序抽象为序贯决策问题,并研究基于深度强化学习的持续集成测试用例优先排序方法,主要研究成果包括:(1)针对强化学习奖励,提出三种基于测试用例历史信息的奖励函数,提升对测试用例历史执行序列的错误检测能力度量;(2)提出三种基于测试用例历史信息滑动窗的强化学习奖励策略,解决持续集成频繁迭代引发的历史信息规模问题;(3)提出三种面向持续集成测试优先排序的智能体奖励对象选择方法,解决实际工业集成测试环境中的强化学习奖励稀疏问题;(4)提出面向持续集成测试优先排序的多源环境感知和自注意强化学习智能体,通过引入基于测试用例历史执行序列的多源信息,解决智能体获取环境信息的局限性问题,通过自注意机制充分学习测试用例历史执行和智能体决策测试用例执行序列之间的关联关系。总体上,本课题提出了持续集成测试优化的序贯决策理论模型,研究了基于深度强化学习的软件持续集成测试优化方法和技术,并在理论和应用技术研究的基础上,进一步建立实际工业环境下的持续集成测试数据集,发现并解决实际存在的稀疏奖励问题,将研究成果与实际应用进行了很好的结合。
期刊论文列表
专著列表
科研奖励列表
会议论文列表
专利列表
User behavior pattern mining and reuse across similar Android apps
用户行为模式挖掘并在类似的 Android 应用程序中重用
DOI:10.1016/j.jss.2021.111085
发表时间:2022-01
期刊:Journal of Systems and Software
影响因子:3.5
作者:Mao Qun;Wang Weiwei;You Feng;Zhao Ruilian;Li Zheng
通讯作者:Li Zheng
DOI:10.13328/j.cnki.jos.005714
发表时间:2019
期刊:软件学报
影响因子:--
作者:何柳柳;杨羊;李征;赵瑞莲
通讯作者:赵瑞莲
DOI:10.1002/smr.2409
发表时间:2021
期刊:Journal of Software: Evolution and Process
影响因子:--
作者:Yang Yang;Li Zheng;Shang Ying;Li Qianyu
通讯作者:Li Qianyu
Diversity-Oriented Test Suite Generation for EFSM Model
EFSM 模型的面向多样性的测试套件生成
DOI:10.1109/tr.2020.2971095
发表时间:2020
期刊:IEEE Transactions on Reliability
影响因子:5.9
作者:Zhao Ruilian;Wang Weiwei;Song Yuqi;Li Zheng
通讯作者:Li Zheng
Adaptive Reward Computation in Reinforcement Learning-Based Continuous Integration Testing
基于强化学习的持续集成测试中的自适应奖励计算
DOI:10.1109/access.2021.3063232
发表时间:2021
期刊:IEEE Access
影响因子:3.9
作者:Yang Yang;Pan Chaoyue;Li Zheng;Zhao Ruilian
通讯作者:Zhao Ruilian
状态模型切片及测试技术研究
- 批准号:61472025
- 项目类别:面上项目
- 资助金额:83.0万元
- 批准年份:2014
- 负责人:李征
- 依托单位:
基于GPGPU的软件回归测试用例多目标预优化
- 批准号:61170082
- 项目类别:面上项目
- 资助金额:58.0万元
- 批准年份:2011
- 负责人:李征
- 依托单位:
新型状态模型切片关键技术研究
- 批准号:60903002
- 项目类别:青年科学基金项目
- 资助金额:17.0万元
- 批准年份:2009
- 负责人:李征
- 依托单位:
国内基金
海外基金
