没有合适的资源?快使用搜索试试~ 我知道了~
数据回归-基于FitNesse的自动化回归测试模型和工具的研究.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 35 浏览量
2022-06-25
09:40:24
上传
评论
收藏 7.96MB PDF 举报
温馨提示
试读
88页
数据回归-基于FitNesse的自动化回归测试模型和工具的研究.pdf
资源推荐
资源详情
资源评论
第一章绪论
第一章绪论
1.1课题研究的背景和意义
软件测试是保证软件质量的重要手段,也是软件丌发过程中的一个重要环节。
软件测试工作做得怎样,直接决定着软件产品质量的好坏。大量统计资料表明,
软件测试阶段投入的成本和工作量往往要占软件开发总成本和总工作量的30%至t
50%甚至更多…。随着软件应用范围的扩大,软件复杂度的提高,以及软件设计技
术的不断发展,软件开发规模越来越大,处理的问题也同趋复杂。同时,对软件
系统的可靠性要求更为严格。传统的软件测试技术和方法以及测试工具已无法满
足大型的、复杂的软件测试需要。实施测试自动化是软件测试的一个发展趋势,
使用软件测试自动化技术能检测出许多手工测试难以发现的缺陷。正确、合理地
实施自动化测试,能够快速、彻底地对软件进行测试,从而提高软件质量,节约
成本,缩短产品发布周期。因此,对软件自动化测试技术和软件自动化测试工具
的研究是一个非常有实际应用价值的课题。
目前主流商业自动化测试工具大多已经覆盖了软件测试生命周期的各个阶
段。然而,它们在产生测试脚本或程序方面都采用了类似方式,即人工指定被测
系统,指定被测方法,编辑和调试产生测试脚本。并且目前还缺乏一种简洁有效、
标准化的测试技术用于软件测试,当前的软件测试工具基本上都存在Gregory
Tassey在《The
Economic
Impacts
of
Inadequate
Infrastructure
for Software
Testing:Final
Report》心1一书中指出的不足:
(1)缺乏彻底测试被测软件产品的能力;
一
(2)缺乏实现集成和互用测试的能力;
(3)缺乏自动产生测试脚本的机制;
(4)缺乏严格的测试,用于决策何时可以可靠地终止测试;
(5)缺乏性能度量和测试度量过程。
为了弥补这些不足,有一些研究者强烈建议软件团队开发他们自己的自动化
软件测试工具口1。
有些项目在组织开发的过程中,由于时间或者技术压力,没有很好的维护回
归测试的测试用例和测试代码,造成后续的维护和修改困难。而人工从源代码重
新编制测试的工作又特别的繁重和缺乏创造性的动机,在实际的项目中往往难以
推动和执行H1。因此,如果能够从缺乏测试用例的源代码(被测系统)自动生成可用
于回归测试的测试用例和测试代码,测试人员及开发人员将从繁重的编写测试用
2
第一章绪论
例和测试代码的工作中解脱出来,将大大提高回归测试效率。
1.2国内外研究现状
1。2.1软件测试及自动化测试综述
①软件测试
(1)软件测试的概念及目的
Grenford
J.Myers在((The
Art
of
Software
Testing>>一书中罗列了以下四
条测试观点【51:
1)软件测试是为了发现错误而执行程序的过程;
2)软件测试是为了证明程序有错,而不是证明程序无错误;
3)一个好的测试用例在于它能发现至今未发现的错误;
4)一个成功的测试是发现了至今未发现的错误的测试。
1983年IEEE提出的软件工程术语中给软件测试下的定义是:“使用人工或自
动的手段来运行或测定某个软件系统的过程,其目的在于检验它是甭满足规定的
需求或弄清预期结果与实际结果之间的差别”m1。该定义明确指出了软件测试是以
检验足否满足业务需求为目标。软件测试不以发现错误为唯一目的,检查不出错
误的测试并不一定是没有价值的。
软件测试是保证软件质量的重要手段,也是软件质量保障的关键元素,是软
件生命周期中的重要组成部分,其主要目的有以下几个:
1)确认软件的质量,确认丌发出来的软件符合用户的需求。一方面是确认软
件做了你所期望的事情(Do
the
right
thing),另一方面是确认软件以正确的方
式满足了用户需求(Do
it
right)。
2)提供信息,比如提供给项目经理的反馈信息,可以帮助项目经理了解项目
的进度。
3)软件测试不仅是测试软件产品的本身,而且还包括软件开发的过程盯1。如
果一个软件产品开发完成之后发现了很多问题,这说明此软件丌发过程很可能是
有缺陷的。软件测试的第三个目的是保证整个软件丌发过程是高质量的睛3。
(2)软件测试方法
’
软件测试的方法和技术多种多样。对于软件测试技术,可以从不同的角度进
行分类阳1。可以将软件测试归纳为以下几种方法:
1)从是否需要执行被测软件的角度,可分为静态测试和动态测试。静态测试
是对被测试程序进行特性分析的一类方法的总称。其主要特点是不实际运行被测
第一章绪论
3
试程序,而是采用其他途径达到检测软件的目的,主要是文档,界面方面的检测。
动态测试则需实际运行被测试程序,输入相应的测试用例,判定执行结果是否与
预期相符,从而检验程序的正确性,可靠性和有效性阻1。
2)从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为白盒
测试、黑盒测试及灰盒测试阳1:
a.白盒测试也称结构测试或逻辑驱动测试,它通过测试来检测产品内部动作
是否按照规格说明书的规定正常进行。白盒测试按照程序内部的结构测试程序,
检验程序中的每条通路是否都按预定要求证确工作。白盒测试的主要方法有逻辑
驱动,基路测试等,主要用于软件验证。因此,白盒测试必须全面了解程序内部
逻辑结构,对所有逻辑路径进行测试,确保被测试程序所有的内部数据结构的正
确性。
b.黑盒测试也称功能测试或数据驱动测试,它通过测试来检测每个功能是否
都能正常使用。在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程
序内部结构和内部特性的情况下,对程序的接口进行测试,它只检查程序功能是
否完全按照需求规格说明书的规定正常使用,程序是否能正确接收输入数据并产
生J下确的输出结果。黑盒测试方法主要有等价类划分法、边界值分析法、错误推
测和因果图法等,主要针对软件界面和软件功能进行测试。
C.狄盒测试足在白盒测试和黑盒测试的基础上,提出的一种程序测试方法。
它不强调完全了解程序中各语句的逻辑结构,而是以程序的主要功能和性能为测
试依据,根据程序的流程图、功能说明书以及测试人员的实践经验来设计测试用
例,在测试程序的主要功能的同时,也测试程序的主要性能。
通常,在进行单元测试时采用白盒测试,而在功能测试和系统测试时采用黑
盒测试。这二者的侧重点不同,使用场合也不同。灰盒测试一定程度上弥补了这
两者的不足。
②回归测试
在软件生命周期中,由于增加新的功能模块或发现软件的缺陷,软件经常需
要修改。一旦软件被修改了,就可能引入新的缺陷,使原来工作正常的功能出现
问题,这时就需要回归测试(Regression
Testing)。
(1)软件回归测试的定义
IEEE对于回归测试的定义为:回归测试是对系统或组件进行选择性的重测以
验证修改没有引入不良影响n训。回归测试是软件测试中一种重要的测试,它关注
软件生命周期中出现的各种变化,及其可能给软件质量带来的副作用。回归测试
是软件开发过程中为确保软件质量进行的一种常用的验证测试方法¨1|。
在实际丌发中,软件生命周期中的任何一个阶段,只要软件发生了改变就可
剩余87页未读,继续阅读
资源评论
programxh
- 粉丝: 17
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于matlab实现对表面肌电信号进行归一化处理,并对归一化后的图形显示 .rar
- 基于matlab实现单级倒立摆的 T-S 模型 包括 LMI 程序源码
- 图书管理系统(struts+hibernate+spring+ext).rar
- 基于matlab实现此压缩包包含语音信号处理中的语音变声代码加音频.rar
- STM32使用PWM驱动舵机并通过OLED显示
- 基于matlab实现车辆路径规划;遗传算法;matlab代码.rar
- 图书管理系统(struts+hibernate+spring)130225.rar
- 基于matlab实现采用标量衍射理论,实现菲涅尔衍射和夫琅禾费衍射,对光波的波前传播和数字全息的应用有帮助.rar
- JavaScript版去除链表重复元素
- 微信小程序项目-功德木鱼(带设置面板-自定义文字、可选字体颜色、可选木鱼样式)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功