关键词:
软件测试
UML活动图
测试用例
蚁群算法
摘要:
计算机科学技术的飞速发展,促进了软件产品的广泛应用。不论是软件的生产者还是软件的使用者,都在激烈的竞争中求生存谋发展,软件产品的质量至关重要,并已成为关注的焦点。为了保证软件产品的质量,软件测试成为必不可少的重要过程和手段。在软件系统的开发过程中,面对着极其错综复杂的问题,软件开发者的主观认识不可能完全符合客观事实,而且与工程密切相关的各类人员之间的沟通和配合也不可能完美无缺。尽管力求在每个阶段结束之前通过严格的技术审查,尽可能极早地发现并纠正差错,但是,审查并不可能发现所有错误,而且,在纠正这些错误的过程中还可能引入新的错误。如果在软件投入实际运行之前没有发现并纠正存在的错误,那么这些错误将在运行过程中暴露出来,到时候不仅要为改正这些错误而付出高昂的代价,而且系统很可能产生严重后果。本文首先介绍了软件测试的基本概念和基本方法,对常见的测试用例生成技术进行了研究,并分析探讨了各类技术所具有的优势和劣势;其次对基于UML的测试方法做了简单阐述,指出UML模型用于指导测试的优势所在,并分析了UML活动图的可测试性和测试策略,进而指出活动图模型不仅是进行业务需求分析和系统设计的有力工具,同时也是系统测试的重要依据。研究了蚁群算法并对其进行了改进,给出了相应的改进算法,使得应用改进的蚁群算法遍历有向图时,将得到测试所需的路径集,而不仅仅是一条最优路径。最后,本文给出了一个测试用例生成系统的总体框架,分析了其模块组成和流程图,且以网上订餐系统的两个事件为例,阐述了采用该方法生成抽象测试用例的详细过程。结果表明,利用UML活动图模型和改进的蚁群算法来生成测试用例,不仅可以对冗余测试用例的生成进行有效地控制,使生成的测试用例数量合理,而且生成的测试用例有效,能够满足测试的需求。本文的研究成果:1)在分析了活动图的可测性和优势基础上,提出了UML活动图转换成有向图的规则和算法。2)在研究了基本蚁群算法的基础上,提出了适用于测试用例路径生成的改进性蚁群算法,包括改变蚂蚁选择行走路径的方式,定义人工蚂蚁的属性,即能量无限、自带记忆体、死亡方式等。