集成测试中的类测试顺序生成技术述评  被引量:6

Survey of Class Test Order Generation Techniques for Integration Test

在线阅读下载全文

作  者:张艳梅[1,2,3] 姜淑娟[1,2] 张妙[1] 鞠小林 

机构地区:[1]中国矿业大学计算机科学与技术学院,江苏徐州221116 [2]广西可信软件重点实验室(桂林电子科技大学),广西桂林541004 [3]南京大学计算机软件新技术国家重点实验室,南京210093 [4]南通大学计算机科学与技术学院,江苏南通226019

出  处:《计算机学报》2018年第3期670-694,共25页Chinese Journal of Computers

基  金:国家自然科学基金(61502497;61673384);广西可信软件重点实验室开放课题(kx201530;kx201609);南京大学计算机软件新技术国家重点实验室开放课题(KFKT2014B19);中国博士后科学基金项目(2015M581887);徐州市科技计划项目(KC15SM051)资助

摘  要:对于面向对象程序,一个常见的问题是确定集成测试中的类的测试顺序,称为类集成测试顺序的确定问题.类测试顺序的确定问题是面向对象软件集成测试中的关键难点之一.首先,简单介绍类测试顺序确定问题的背景.其次,概括描述类集成测试顺序问题以及其产生的原由,并介绍类间依赖关系(包括类间静态依赖关系和动态依赖关系)和抽象类的定义与特点,接着对类测试顺序的确定问题进行分类并评析两种分类方式,包括破除环路的方式和估算测试桩代价的方式.其中,破除环路主要采用基于图论和基于搜索这两类方法,估算测试桩代价主要根据评价所构造的测试桩的个数多少和所构造的测试桩的总体复杂度大小这两个指标.再次,对现有解决类集成测试顺序问题的典型技术进行分类,分为基于图论和基于搜索技术两大类.然后,全面系统地分析这些相关技术的研究现状、特点等,之后还介绍了已有典型的基于图论和基于搜索技术技术在实验过程中各自所使用的评测数据集等.最后,指出未来的研究方向,并对该文进行总结.In the context of object-oriented software, a common problem is the determination of test orders for the integration test of classes, known as the class integration and test order problem. Determination of class integration test order is a key and difficult point in object-oriented software integration testing. Firstly, the background of class integration test order problem is simply introduced. Secondly, the class integration test order determination problem is outlined and the origin of class integration test order problem is analyzed, and then some related definitions such as inter-class dependencies (including inter-class static dependencies and inter class static dependencies) and abstract class are introduced. Inter class dependencies include inter-class static dependencies and inter-class dynamic dependencies, and abstract class has the characteristic of cannot be instantiated, which can affect the class integration test order. The solutions of class integration test order determination problem are classified to two ways, which are the cycle-breaking method and the measurement of the test stub cost. For the cycle-breaking method, it mainly adopts two kinds of methods~ one is the method based on graph theory and another one is the method based on search. Where, the method based on graph theory and can be divided into two types: (1) only the inter-class static dependencies are considered, breaking inheritance, aggregation, association and use relations directly to eliminate the loops~ (2) the inter-class static and dynamic dependencies are considered, breaking inheritance, aggregation, association, use and dynamic dependencies directly to eliminate the loops. The method based on search first determines an initial population which is consisted by class integration test orders, and then under the premise of meeting certain conditions (e. g. , minimum the test stub cost), it deals with the population through evolutionary operation, and generates the optimal class integration test order. At pre

关 键 词:软件测试 类测试顺序 集成测试 破除环路 测试桩代价 

分 类 号:TP311[自动化与计算机技术—计算机软件与理论]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象