Regression testing, a process of software testing, is an important mean to protect the quality of software. Test case prioritization is one of the effective and practical regression testing techniques. How to incorporate more non-coverage factors into the calculation of priorities of test cases is still the focus of test case prioritization field. The (whole) software structure is one of the factors influencing software quality, which has always been neglected. This project introduces the concept of software as network into the field of software testing and constructs the software network of object-oriented software, designed to measure the structure of the software, to clarify the relationship between software structure and software defects, and the relationship between software structure and fault propagation, and finally to provide the structural factors for the test case prioritization. This project provides an effective way, from the perspective of software networks to calculate the priorities of test cases, and to prioritize the test cases, providing a novel test case prioritization technique based on software networks. This project is of great significance for improving the efficiency of regression testing, reducing software maintenance costs, and solving the major demand of the national economy and national security fields for high-quality software. And it is also a new attempt of software network (complex networks) theory, in the field of software testing, with a high research value and significant scientific significance to promote the development of the software testing field.
回归测试是软件测试的重要过程,是保障软件质量的重要手段。测试用例排序技术是一种高效实用的回归测试技术。如何将非覆盖因素综合考虑,进行测试用例优先级评估,是测试用例排序技术研究的重点之一。软件(整体)结构是影响软件质量的重要因素,但是现有的排序技术鲜有将结构融入优先级计算。本项目将"软件网络观"引入软件测试领域,用软件网络抽象软件结构,旨在对软件的结构进行量度,阐明软件结构与缺陷产生及缺陷传播之间的关系,提供影响测试用例优先级的结构因素,从软件网络角度提出有效的测试用例优先级计算方法,提供一种基于软件网络的测试用例排序方法。本项目的研究对于提高回归测试效率,降低软件维护成本,解决国民经济和国家安全领域对高质量软件的重大需求具有重要意义。同时,也是软件网络(复杂网络)理论、方法在软件测试领域的全新尝试,对于推动软件测试领域的发展具有很高的理论研究价值。
如何将非覆盖因素综合考虑,进行测试用例优先级评估,是测试用例排序技术研究的重点之一。软件(整体)结构是影响软件质量的重要因素,但是现有的排序技术鲜有将结构融入优先级计算。针对这些问题,本项目的研究成果包括:1)提出了特征(方法、属性)、类、包等多个粒度的加权(无权)软件网络模型,抽象软件的整体结构特征,并用软件实现了自动从Java源代码构建这些网络的方法。2)基于各个粒度的软件网络模型,引入或提出新的复杂网络度量,分析软件实体复杂性与缺陷产生及传播的关系,分析了软件缺陷结构的挖掘方法。3)基于软件网络,分析缺陷在软件拓扑结构中的传播过程,并进而分析缺陷的传播机理及缺陷危害评估方法。4)提出了评价测试用例优先级的方法,并进而实现对回归测试用例的排序。5)将软件网络的思想扩展到服务计算领域中的复杂软件系统,解决服务的分类、推荐等问题。6)开发了相应的平台工具,积累了一批研究数据集,为进一步的研究奠定了基础。本项目的研究成果对于提高回归测试效率,降低软件维护成本,解决国民经济和国家安全领域对高质量软件的重大需求具有重要意义。同时,也是软件网络(复杂网络)理论、方法在软件测试领域的全新尝试,对于推动软件测试领域的发展具有很高的理论研究价值。
{{i.achievement_title}}
数据更新时间:2023-05-31
跨社交网络用户对齐技术综述
基于LASSO-SVMR模型城市生活需水量的预测
基于多模态信息特征融合的犯罪预测算法研究
城市轨道交通车站火灾情况下客流疏散能力评价
基于FTA-BN模型的页岩气井口装置失效概率分析
面向软件回归测试用例集优化的混合进化方法研究
基于GPGPU的软件回归测试用例多目标预优化
软件重构对回归测试用例的影响及其修复方法研究
基于退火Memetic算法和贝叶斯网络的回归测试用例集优化研究