一种软件自动测试工具的研究与实现

来源 :西安电子科技大学 | 被引量 : 0次 | 上传用户:yinje2004_2005
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
科学技术和电子计算机的飞速发展使得现阶段软件规模日益增大、软件应用领域日益扩大、客户需求日益复杂多变。例如,Windows XP操作系统的代码大约有4000万行,这使得错误更可能随时发生。作为软件工程中不可或缺的一个重要环节,软件测试对于确保软件的正确性、完整性、安全性和软件质量方面发挥着重大作用。全球每年因为软件缺陷引起的问题数不胜数,轻则给用户带来使用上的不方便,如浏览器崩溃,重则使用户数据丢失,系统崩溃;而在国防、金融、航天等重要领域,有时候软件缺陷造成的后果将更为严重。因此,必须对编写的程序进行完全充分的测试以确保软件的质量。在软件测试中,测试用例的质量决定了测试的完备性,传统的手工测试主要是由人工设计测试用例,虽然很有针对性且质量很高,但是随着软件规模和复杂性的增大,这种测试方式越来越无法满足现代的大型软件测试需求。因此,各大企业更加关注自动化测试逐渐,而测试用例的设计在自动化测试中一直占据着首要位置,因此测试用例的自动生成同样受到了人们的广泛关注。本文主要的研究内容包含如下5方面:(1)深入研究了软件测试的概念、目标和原则,目前已有的软件测试方法和技术;研究了Python脚本语言和XML技术在软件测试中的应用;深入研究了自动化软件测试的概念、适用范围、测试框架和测试脚本的设计与实施,并对目前不同测试环境中常用的自动化软件测试工具的现状进行了分析,特别对这些工具在测试用例的生成方面进行了分析。(2)研究了常用的测试用例自动生成算法,重点分析了随机法和遗传算法在测试用例自动生成方面的优缺点,提出了在特定应用场景下本文所设计的自动化测试工具所使用的测试用例生成算法。(3)设计了一种软件测试的系统模型,该系统模型主要分为以下三个模块:源代码扫描及预处理模块、测试用例自动生成模块和测试报告生成模块;最后对设计的软件自动测试工具的整体的功能流程进行了描述。(4)基于上述系统模型,对设计的软件自动测试工具的各个模块进行了功能的实现并详细介绍了各个模块的整体工作流程和算法流程及各个模块之间的的关系。(5)搭建测试环境并以标准的三角形判断源程序和部分项目源程序为测试对象,对测试结果和测试工具的运行结果进行了分析。
其他文献
人脸识别研究试图赋予计算机根据面孔辨别人物身份的能力,它在刑侦破案、证件验证、门禁系统、视频监视等领域中都有广泛的应用前景。虽然人类不需要任何训练即能识别出人脸,
在互联网发展异常迅速的今天,互联网上的信息和内容控制显得尤为重要,然而近几年出现的一类互联网穿透类软件,能够通过动态代理服务器发送加密信息,从而突破网络封锁。本文的
目标跟踪是计算机视觉研究的热点之一,它在诸如人机交互、自动导航、虚拟现实、医学诊断、自动对焦等许多领域均具有广阔的应用前景。本文的主要工作在以下几个方面:第一,讨
随着网络的发展,在中小型局域网中网络打印也迅速发展起来。同时,网络安全问题越来越受到人们的重视,随之出现的嵌入式网络安全设备也得到了广泛的应用。本文针对局域网内网
随着计算机技术的不断发展,互联网已经成为人们日常工作、生活中不可缺少的信息来源。而由于网络信息本身的特点,这些信息给用户的主要是定性的参考。特别在金融领域,一直以
随着计算机和网络技术的迅猛发展和广泛普及,企业经营活动的各种业务系统都立足于Internet/Intranet环境中。然而,企业网络环境的复杂性和多变性,以及信息系统的脆弱性,决定
随着因特网的快速发展,海量的Web数据资源已经成为人们获取知识与信息的重要来源。而随着Web信息的日益增长,人们不得不花费大量的时间去搜索浏览自己需要的信息。目前,在现
随着计算机技术的不断发展,嵌入式系统已经成为计算机领域的一个重要组成部分。作为嵌入式系统中的重要产品——PDA也随着嵌入式系统的发展而不断提高。随着嵌入式技术的迅速
安全协议,是指在通信协议中应用密码学的手段隐藏或获取信息,达到认证以及消息正确发送的目的的协议。而随着互联网的迅猛发展,安全协议的安全性成为网络安全的关键。虽然安
随着信息安全技术的发展,基于角色的访问控制技术近年来成为访问控制领域的主要研究内容之一,并且在很多企业级系统安全需求方面显示了极大的优势。研究人员已经提出了若干基