摘要软件测试是软件生存周期内的一个重要阶段,是进行软件质量保证和软件文护的重要手段,其目的是以最少的时间和人力找出软件中潜在的故障。回归测试是软件测试的重要组成部分,是为了验证软件修改的正确性以及修改是否引入新的错误。回归测试在整个软件测试工作中占有很大的比重,选择正确的回归测试策略来改进回归测试的效率和有效性对于减少测试时间和成本非常有意义。软件发生修改后重测所有测试用例成本巨大,修改影响分析可以识别软件修改,并理解修改怎样影响软件其它部分,使得软件开发人员能够得出一个修改能够多大规模地影响整个系统,从而只重测那些修改和受修改影响的部件,以达到减少测试成本的目的。27212
本文针对面向对象软件的特性,采用类成员分析法找出类成员之间的关系,再通过算法构造基于类层次分析的函数调用关系图,最后提出一种基于函数调用关系图的修改影响分析算法,找出受程序修改影响的类成员函数,并得出在回归测试中需要更新的相关测试用例。
本文的主要成果包括介绍了一种构造函数调用关系图的方法,建立一个修改影响分析的模型;提出基于函数调用关系图的修改影响分析算法;并应用该算法对一个模拟器程序的函数调用图进行测试用例更新实验,完成修改影响分析和测试用例更新统计。
关键词 回归测试 面向对象 修改影响分析 测试用例更新与重用 函数调用关系图 毕业论文设计说明书外文摘要
Title Study on Change Impact Analysis-based Tset Case Updating
Abstract
Software testing is an important phase of software life cycle,it is an important method to ensure the software quality and maintain the software,its purpose is to minimize the time and manpower to identify all potential faults in the system.Regression testing is an important part of software testing ,it can verify the correctness of the software modification and know whether the changes bring new error.Regression testing occupies a large proportion in the whole software testing work, choosing the right regression testing strategy to improve the efficiency and effectiveness is very important for reducing the test time and cost. In regression testing,to retest all test cases after the software is modified costs qiuet a lot, change impact analysis can identify software changes and understand their affecting on other parts, it makes the software developers know how large a range that a change will affect the system, and just know what changed and affected parts they need to retest,to achieve the purpose of reducing test cost.
According to the characteristics of object-oriented software,the paper firstly use the the class hierarchy analysis method to find relationship between the members of the class, then structure a function call graph based on class hierarchy analysis through an algorithm. Finally propose an change impact analysis algorithm based on the function call gragh to find effcted functions after modifying a function, and then obtain the relevant test case who need to be updated in regression testing.
The main achievements of this paper include introducing a method to construct a function call graph,to build a model for change impact analysis; proposing an change impact analysis algorithm based on function call graph, and applying it to conduct an test case update experiment on a simulator program, complete change impact analysis and updated test case Statistics.
Keywords regression testing; object-oriented; change impact analysis;
test case update and reuse; function call graph
目 次
1 绪论 1
1.1 研究背景 1
1.2 修改影响分析研究现状 2
1.3 本文研究内容 3