论文部分内容阅读
随着计算机技术的日益发展,计算机软件系统被广泛应用到人们的日常生活中,软件的复杂度日益增加使得软件的风险及其成本的发展趋势呈指数上升,因此研究如何保证软件的质量有着重大意义。 软件测试是软件开发过程中非常重要的一环,严格、全面的测试可以保证软件的质量并降低开发成本。测试的核心是测试用例的生成,传统的测试用例生成方法主要依赖于测试人员的手工测试,但对于大型软件系统来说,手工生成测试用例不仅效率低下而且出错率很高,由此,如何自动生成测试用例成为测试领域中研究的重点。 此外,在大型软件的测试用例生成中,生成的测试用例往往是一个庞大的数目,因此要完全测试所有测试用例是不可能的,在此情况下,对测试用例集进行优化是测试中必须考虑的步骤。 综上,针对测试用例的生成与优化,本文所做的主要工作包括: (1)以系统的UML活动图模型为研究重点,针对活动图中并发模块难以快速生成合理测试场景的问题本文提出了一种“基于权值的排序算法”,该方法通过为并发模块中的节点设置权值从而生成对并发模块中的节点全覆盖的测试场景。 (2)针对测试用例集的优化问题,本文在测试用例集优化方法中的优先排序方法的前提下提出了一种基于插桩的优化技术,该技术通过对源程序的分析,插入合理的适应值函数及评价函数,在优化测试用例时通过每条测试用例的运行输出其评价函数的值,以值的大小作为优先级别对测试用例进行优化。 (3)实现了基于UML活动图生成测试用例及测试用例优化的工具TCGT,该工具主要包括初始化模块、测试用例生成模块及优化测试用例模块三大模块。 通过对软件系统的测试,证实了“基于权值的排序算法”可快速生成合理的活动图并发模块测试场景,且基于插桩的测试用例优化方法可对测试用例集进行优化。