摘要:持续集成环境下的测试存在测试用例集变化大、测试时间有限和快速反馈等需求,传统的测试优化方法难以适用.强化学习是机器学习的一个重要分支,其本质是解决序贯决策问题,可以用于持续集成测试优化.但现有的基于强化学习的方法中,奖励函数计算只包括测试用例在当前集成周期的执行信息.从奖励函数设计和奖励策略两个方面开展研究.在奖励函数设计方面,采用测试用例的完整历史执行信息替代当前执行信息,综合考虑测试用例历史失效总次数和历史失效分布信息,提出了两种奖励函数.在奖励策略方面,提出对当前执行序列的测试用例整体奖励和仅对失效测试用例的部分奖励两种策略.在3个工业级被测程序进行实验研究,结果表明:(1)与现有方法相比,所提出的基于完整历史执行信息奖励函数的强化学习方法可以大幅度提高持续集成测试序列的检错能力;(2)测试用例历史失效分布有助于发现潜在失效的测试用例,对强化学习奖励函数的设计更加重要;(3)整体奖励与部分奖励两种奖励策略受到被测程序的多种因素影响,需要根据实际情况具体选择;(4)包含历史信息的奖励函数会增加时间消耗,但并不影响测试效率.
Abstract:Testing in continuous integration environment is characterized by constantly changing test sets, limited test time, fast feedback, and so on. Traditional test optimization methods are not suitable for this. Reinforcement learning is an important branch of machine learning, and its essence is to solve sequential decision problems, thus it can be used in test optimization in continuous integration. However, in the existing reinforcement learning based methods, the reward function calculation only includes the execution information of the test case in the current integration cycle. The research is carried out from two aspects:reward function design and reward strategy. In the design of reward function, complete historical execution information of the test case is used to replace the current execution information and the total number of historical failures and historical failure distribution information of the test case is also considered. In terms of the reward strategy, two reward strategies are proposed, which are overall reward for test cases in current execution sequence and partial reward only for failed test cases. In this study, experimental research is conducted on three industrial-level programs. The results show that:(1) Compared with the existing methods, reinforcement learning methods based on reward function with complete historical information proposed in this study can greatly improve the error detection ability of test sequences in continuous integration; (2) Test case historical failure distribution can help to identify potential failure test cases, which is more important for the design of the reward function in reinforcement learning; (3) The two reward strategies, i.e. overall reward and partial reward, are influenced by various factors of the system under test, therefore the reward strategy need to be selected according to the actual situation; and (4) History-based reward functions have longer time consumption, though the test efficiency is not affected.
PDF全文下载地址:
http://jos.org.cn/jos/article/pdf/5714
删除或更新信息,请邮件至freekaoyan#163.com(#换成@)
面向持续集成测试优化的强化学习奖励机制
本站小编 Free考研考试/2022-01-02
相关话题/奖励 测试 信息 历史 设计
敏感变量和感知机结合的测试预言生成方法
摘要:测试预言生成技术是软件工程测试领域的研究热点之一.没有可以利用的历史测试用例是目前大部分测试预言生成技术的普遍假设,但是这种假设会使我们错过利用现有部分测试用例协助自动生成新测试用例预言的机会.在已知部分测试用例集的情况下,提出了基于敏感变量和线性感知机的新测试用例的测试预言自动生成方法.首先 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于角色发现的动态信息网络结构演化分析
摘要:动态信息网络是当前复杂网络领域中极具挑战的新问题之一,对其动态的演化过程进行研究,有助于分析网络结构、理解网络特性、发现网络中潜在的信息及演化规律,具有重要的理论意义与应用价值.基于网络结构本身量化表示的复杂性以及网络演化时序、复杂、多变的挑战,使用角色来量化动态网络的结构,并对模型进行分析, ...中科院软件研究所 本站小编 Free考研考试 2022-01-02大数据管理系统的历史、现状与未来
摘要:大数据管理技术正在经历以软件为中心到以数据为中心的计算平台的变迁,传统的关系型数据库管理系统无法满足现在以数据为中心的大数据管理的需求,设计新型大数据管理系统迫在眉睫.首先回顾了数据管理技术的发展历史;之后,从大数据管理的存储、数据模型、计算模式、查询引擎等方面分析了大数据管理系统的现状,指出 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02融合多维信息的主题自适应Web API推荐方法
摘要:如何根据用户的自然语言需求描述自动生成或推荐用于解决问题的WebAPI服务集合,并辅助构建Mashup,是业务流程管理者和服务组合者关注的热点之一.如何提高推荐的质量,是大家关注的焦点.为此,提出了一种融合多维信息的主题自适应WebAPI推荐方法HDP-FM(hierarchicalDiric ...中科院软件研究所 本站小编 Free考研考试 2022-01-02持续集成测试用例集优化综述研究
摘要:基于互联网的软件开发要求产品快速迭代,同时保持产品的质量,其关键的环节就是持续集成.持续集成通过自动化测试来保证集成到主干的代码质量.持续集成时的测试用例选择是一个非常有挑战性的问题.如果运行所有的测试用例,需要消耗大量的计算资源,并造成测试反馈周期过长.如果选择的测试用例集不合适,又不足以覆 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02联合建模异构社交和内容信息的活动推荐模型
摘要:随着基于活动的社交网络的迅速发展,活动推荐已成为一个重要的工具,帮助人们在线上发现有趣的活动,并在线下面对面地参与活动.但是,相对于传统的推荐系统,活动推荐面临着很多挑战.(1)用户只能参与很少的活动,这就导致一个非常稀疏的用户-活动矩阵;(2)用户对活动的响应是隐性反馈;(3)活动本身有生命 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于编码转换的离散演化算法设计与应用
摘要:为了求解离散域上的组合优化问题,借鉴遗传算法(GA)、二进制粒子群优化(BPSO)和二进制差分演化(HBDE)中的映射方法,给出了一种基于映射变换思想设计离散演化算法(DisEA)的实用方法——编码转换法(ETM).为了说明ETM的实用性与有效性,首先,基于ETM给出了一个离散粒子群优化算法( ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于邻域差分和协方差信息的单目标进化算法
摘要:复杂的单目标优化问题是进化计算领域的一个研究热点问题,已有差分进化和协方差进化被认为是处理该问题的较有效方法,其中,差分信息类似于梯度可以有效地指导算法朝着最优解方向搜索,而协方差则是基于统计的方式来生成较优的子代种群.引入了协方差信息对差分算子进行改进,提出了一种基于邻域差分和协方差信息的进 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02基于时隙传输的数据中心路由算法设计
摘要:基于软件定义网络(softwaredefinednetwork,简称SDN)的数据中心流量工程,能够通过对全局视图的网络管控,动态选择路由路径,规避拥塞发生的风险.但是在制定路由策略时,经常会对数据流进行迁移,尤其是针对大流的迁移容易造成数据流丢包以及接收端数据包乱序的问题.提出了基于时隙的流 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02可编程模糊测试技术
摘要:模糊测试是一种有效的漏洞挖掘技术.为了改善模糊测试因盲目变异而导致的效率低下的问题,需要围绕输入特征、变异策略、种子样本筛选、异常样本发现与分析等方面不断定制模糊测试器,从而花费了大量的定制成本.针对通用型模糊测试器(即支持多类输入格式及目标软件的模糊测试器)的低成本定制和高可扩展性需求,提出 ...中科院软件研究所 本站小编 Free考研考试 2022-01-02