论文摘要
软件测试在软件的整个开发过程中占有非常重要的地位,是保证软件质量、提高软件可靠性的关键步骤之一。测试自动化是软件测试的一个发展趋势,人们在自动化软件测试方面做了大量工作,研发出很多的软件测试工具,用于实现自动化测试。早期的软件自动化测试工具在技术和功能上存在的不足:这些工具通常需要手工指定被测系统(System Under Test, SUT),指定待测试方法,手工编辑和调试生成测试脚本,所以测试脚本的可重用性和可维护性较差,当被测系统发生改变后,需要调整才能正确执行原来的测试脚本。测试用例的设计与生成是软件测试过程中的重要环节。全面测试需要大量的测试用例,单纯的手动生成方式往往十分困难。因此测试用例的自动生成便成为自动化测试中的一个重要问题。本文在研究当前软件测试用例自动生成技术及常用的测试用例自动生成算法基础上,受Simon Poulding和John A.Clark提出的参数分布寻优算法的启发,提出一种基于代码逻辑结构的参数分布寻优及组合边界值分析的测试用例生成算法(An Approach For Test Case Generation Based On Optimization Of Parameter And Boundary Value Analysis,简称TCG-OPBVA)。与Simon Poulding和John A. Clark提出的参数分布寻优算法相比较,关键不同点如下:(1)从控制流图自动导出输入参数的贝叶斯网络结构。先通过工具软件解析源代码,构造程序的控制流图,然后从控制流图自动化构造程序的参数的贝叶斯网络结构。(2)适应度函数。自动化构造参数的贝叶斯网络结构后,搜索算法只需对贝叶斯网络进行参数学习,因而可以去掉差异性约束项,同时也减少了人为规定覆盖性约束项与差异性约束项之间的权重因子所造成的不确定性影响。(3)边界值组合分析。抽样出测试集合之后,再按照组合边界值分析法增加适量的测试用例,形成最终的测试用例集。为了更好的实施自动化回归测试,应用TCG-OPBVA算法,基于验收测试框架FitNesse,提出一个自动化回归测试模型。基于该模型自主设计并实现了一个实用的自动化回归测试工具(Automated Regression Testing Tool,简称ARTT),用于对Java程序实施自动化回归测试。该工具具有以下特点:(1)自动生成测试用例。ARTT逐个解析被测系统中的被测试类,提取被测试类的测试信息,同时生成用于存储待测试方法的参数信息的XML文档。手工编辑这些参数的边界值后,ARTT依据这些参数信息,应用TCG-OPBVA算法能够自动生成测试用例。(2)自动构建Fit表格。ARTT根据提取到的测试信息以及生成的测试用例,能够构建运行在FitNesse环境下的带有测试用例的Fit表格。(3)自动生成测试代码。ARTT依据提取到的测试信息及Fit表格中的信息自动构建测试代码。ARTT采用类似于数据驱动的脚本技术,将测试输入值和期望输出结果单独存储在Fit表格中。其优点是能够方便地添加、删除或修改测试数据,并在不需要修改测试代码的情况下对一个方法进行回归测试。此外,由ARTT生成的测试代码还具有可读性、可重用性以及可维护性较好等特征。接着,本文针对ARTT的特点使用了实例对其进行验证。实验结果表明,本文提出的自动化回归测试模型是可行的。同时表明,应用TCG-OPBVA算法的ARTT工具能较方便地实施对Java程序的自动化回归测试,能高效的检测软件缺陷。
论文目录
相关论文文献
- [1].一种动态约简的多目标测试用例优先级排序方法[J]. 计算机科学 2019(12)
- [2].一种面向路径覆盖的测试用例进化生成方法[J]. 牡丹江师范学院学报(自然科学版) 2020(01)
- [3].航天软件测试用例设计质量的评估及提升[J]. 质量与可靠性 2020(02)
- [4].基于运行剖面的测试用例分配与选择方法[J]. 计算机工程 2020(06)
- [5].基于测试用例库的复用方法研究[J]. 电脑知识与技术 2018(32)
- [6].基于变异分析的测试用例约简方法[J]. 计算机应用 2017(12)
- [7].测试用例复用在电子采购交易平台中的应用[J]. 计算机与数字工程 2018(01)
- [8].融入自适应迁移的路径覆盖测试用例进化生成[J]. 计算机应用研究 2016(12)
- [9].测试用例修复的方法与工具综述[J]. 现代计算机(专业版) 2017(02)
- [10].基于模型的软件测试用例生成方法比较研究[J]. 现代计算机(专业版) 2017(04)
- [11].符号执行技术在测试用例生成中的应用[J]. 现代计算机(专业版) 2017(04)
- [12].面向测试用例生成的集合进化算法实现[J]. 牡丹江师范学院学报(自然科学版) 2017(02)
- [13].组合测试用例自动生成软件设计[J]. 自动化技术与应用 2017(05)
- [14].基于死锁的并发类单元测试用例自动生成[J]. 计算机应用与软件 2017(04)
- [15].多目标测试用例优先级排序研究进展[J]. 重庆工商大学学报(自然科学版) 2017(03)
- [16].基于消息交互的测试用例编写方法的实现[J]. 萍乡学院学报 2017(03)
- [17].基于变力度组合覆盖的信号处理软件测试用例生成[J]. 微电子学与计算机 2017(06)
- [18].C语言软件错误定位的测试用例库构建[J]. 太原师范学院学报(自然科学版) 2015(04)
- [19].基于聚类算法的测试用例排序[J]. 计算机工程与应用 2016(05)
- [20].一种提高错误定位效率的测试用例选择方法[J]. 华东理工大学学报(自然科学版) 2016(04)
- [21].软件测试用例设计[J]. 信息与电脑(理论版) 2016(12)
- [22].基于正交试验设计的测试用例选择方法[J]. 计算机与数字工程 2016(08)
- [23].一种基于蜕变关系的测试与失效测试用例定位模型[J]. 计算机科学 2016(10)
- [24].基于需求特征的软件测试用例设计模型研究[J]. 高技术通讯 2013(08)
- [25].基于开发思维的功能测试用例设计方法[J]. 汽车电器 2016(10)
- [26].基于状态图的航天器测试用例设计[J]. 航天器工程 2014(06)
- [27].软件测试用例管理方法初探[J]. 电子技术与软件工程 2015(05)
- [28].一种测试用例库的建设方法研究与实践[J]. 电子制作 2015(06)
- [29].优化遗传算法在软件测试用例方面的应用[J]. 科技创新导报 2015(08)
- [30].测控软件测试用例库管理系统的研发[J]. 质量与可靠性 2015(03)
标签:软件测试论文; 自动化回归测试工具论文;