软件测试-静态测试.ppt_第1页
软件测试-静态测试.ppt_第2页
软件测试-静态测试.ppt_第3页
软件测试-静态测试.ppt_第4页
软件测试-静态测试.ppt_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

指导教师:简勇,软件测试方法技术的研究静态测试,班级:软件117学生:居富山学号:1108203719,论文的主要工作,介绍软件测试以及静态测试方法研究背景和意义,以及它们在国内的前景和未来对软件测试进行概述,什么是软件测试?它的目的和原则是什么?用什么工具去测?重点介绍静态测试,它的简介、学术解释、编码规范、质量度量、错误检测,以及它的分析工具、测试要点和动态测试之间的区别对静态测试进行总结,对它的未来进行展望最后,感谢那些在我写论文过程中支持过我和帮助过我的人们,本课题研究的是软件测试方法技术的研究静态测试。随着软件技术的日益发展,软件系统的复杂性和规模性也在不断的扩大,软件的安全性和质量的保证成为了所有公司和个人关注的地方,软件中存在的各种问题也逐渐成为了我国制约软件产业发展的主要因素。一些小的软件开发公司,甚至连一个专门的软件测试人员都没有。可想而知,我国当今的软件产业是多么的薄弱,严重的制约了我国软件产业的发展。没有很好地软件测试工作为产品的开发把关,怎么会有完美的、符合客户要求的产品呈现。所以软件测试在软件开发中的地位日渐提高,软件测试影响也越来越大。,第一章:课题的背景及意义,第二章:软件测试概述,软件测试的定义和实质,GrenfordJ.Myers曾对软件测试的目的提出过以下观点:(1)测试是为了发现程序中的错误而执行程序的过程;(2)好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;(3)成功的测试是发现了至今为止尚未发现的错误的测试。然而,这种观点指出测试是以查找错误为中心,而不是为了演示软件的正确功能.但是只从字面意思理解,可能会产生误导,认为发现错误是软件测试的唯一目的,查找不出错误的测试就是没有价值的测试,实际上并非如此!(1)测试并不仅仅是为了找出错误.通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进;(2)这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性;(3)没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法,软件测试的定义:,软件测试主要工作内容是验证和确认,下面分别给出其概念:验证是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程;2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程;3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。确认是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件,软件测试的定义,第三章静态测试,静态测试简介,1、静态测试是指无须执行被测代码,而是借助专用的软件测试工具评审软件文档或程序,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率;2、静态测试是指测试不运行的部分:只是检查和审阅,如规范测试、软件模型测试、文档测试等。动态测试是通常意义上的测试,也就是运行和使用软件;3、通过评审文档、阅读代码等方式测试软件称为静态测试,通过运行程序测试软件称为动态测试。在动态测试中,通常使用白盒测试和黑盒测试从不同的角度设计测试用例,查找软件代码中的错误;4、静态测试是指不用执行程序的测试,它主要采取方案代码走查、技术评审、代码审查的方法对软件产品进行测试。,静态测试学术简介,“静态测试”在学术文献中的解释:1、静态测试是指无须执行被测代码,而是借助专用的软件测试工具评审软件文档或程序,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率;2、静态测试是指测试不运行的部分:只是检查和审阅,如规范测试、软件模型测试、文档测试等。动态测试是通常意义上的测试,也就是运行和使用软件;3、通过评审文档、阅读代码等方式测试软件称为静态测试,通过运行程序测试软件称为动态测试。在动态测试中,通常使用白盒测试和黑盒测试从不同的角度设计测试用例,查找软件代码中的错误;4、静态测试是指不用执行程序的测试,它主要采取方案代码走查、技术评审、代码审查的方法对软件产品进行测试。,静态测试编码规范,一个项目或者一个企业,如果要下决心实施软件质量,实施软件工程,第一步要做的就是软件编码规范。编码规范是程序编写过程中必须遵循的规则,一般会详细规定代码的语法规则、语法格式等。企业实施怎样的编码规范,取决于很多个因素:l编程采用的语言,例如C、C+、JAVA、ADA等。项目的规范化程度。目前现成的C/C+编码规范有很多,例如前几年网络上比较流行的华为公司编程规范、摩托罗拉C+编程规范等。但项目不能完全照搬,应该根据自己所处的阶段,定制属于自己的规范,否则的话,会让程序员无所适从,严重打击程序员的积极性。有了统一的规范后,测试工程师或者程序员自身,就可以实施编码规范检查了。要真正把编码规范贯彻下去,单单靠测试员程序员的热情,很难坚持下去,所以笔者建议借助于一些专业的工具来实施。在C/C+语言的编程规则检查方面,比较专业的工具有C+Test、LINT工具、KlocWork(Insight)/QAC/QAC+等,这些工具通常可以和比较流行的开发工具集成在一起,程序员在编码过程中,在编译代码的同时即同时完成了编程规则的检查。,静态测试质量度量,有了严格的编程规范,只能算是万里长征迈出了第一步。要提高软件的可重用性,以及软件的可维护性,还需要进一步的努力,即静态质量度量。静态质量度量所依据的标准是ISO9126。在该标准中,软件的质量用以下几个方面来衡量,即功能性(Functionality)、可靠性(Reliability)、可用性(Usability)、有效性(Efficiency)、可维护性(Maintainability)、可移植性(Portability)。以ISO9126质量模型为基础,可以构造质量度量模型。具体到静态测试,这里主要关注的是可维护性。要衡量软件的可维护性,可以从四个方面去度量,即可分析性(Analyzability)、可改变性(Changeability)、稳定性(Stability)以及可测试性(Testability)。具体到软件的可测试性怎么去衡量。又可以从三个度量元去考虑,例如圈复杂度、输入/输出的个数等。圈复杂度越大,说明代码中的路径越多;路径越多,意味着要去做测试,需要写更多的测试用例。输入/输出的个数同样的道理。在具体的实践中,专门的质量度量工具是必要的。没有工具的支持,这一步很难只靠人工完成。在这个阶段,比较专业的工具有Testbed、Logiscope等。,静态测试错误检测,在传统意义上认为,错误检测应该是动态的系统测试的范围。但在bug的成本上分析,有以下公认的结论。bug发现的越晚,修正的成本就越高,测试阶段修正bug的成本是编码阶段的约4倍的关系。为了减少成本,bug被发现的越早越好。在编程阶段,静态的分析代码就能找到代码的bug,是很多人的梦想。这个梦想在21世纪初变成了现实。以PolySpacee、Klocwork、Coverity为代表的静态分析软件,实现了只要静态分析代码,就可以发现代码的bug,例如数组越界、除数为0、缓冲区溢出等,虽然还不是特别完美。微软在其最新的开发工具VisualStudio2005的teamsystemediton中集成了安全工具PREFix。PREFix原来就是著名的静态分析工具,后被微软收购过来。从微软的倾向看发展走势,类似的静态工具未来会成为市场的主流。,静态测试缺陷成本图,静态测试测试要点,挑选合适的复审员管理部门的参与注意事项技术复审与项目管理复审领导记录员规则和惯例规则用户与复审,静态测试与动态测试的区别,识别缺陷的成效静态测试的成效:最多识别软件所有缺陷中70-75%的缺陷动态测试的成效:最多识别软件所有缺陷中30-35%的缺陷识别缺陷的成本需求阶段识别一个重要缺陷平均花费2-3小时设计阶段识别一个重要缺陷平均花费3-4小时代码评审阶段识别一个重要缺陷3-5小时动态阶段识别一个重要缺陷平均花费15-25小时解决缺陷的成本需求及设计阶段消除一个重要缺陷花费5-10小时代码评审阶段消除一个重要缺陷花费5-15小时动态测试识别消除一个重要缺陷平均花费30-80小时,第四章结论与展望,结论,随着软件开发过程和开发技术的不断改进,软件测试理论和方法也在不断完善,软件测试就是为了发现程序中错误而执行程序的过程,测试的目的就是以最少的时间和人力找出软件中潜在的各种错误和缺陷。本文介绍了软件测试的基础概念及静态测试。据业界统计,60%以上的问题都是需求设计问题,理论上讲这些问题都能够通过静态测试发现,从上面的分析也可以看出静态测试提出的问题,其解决成本远低于动态测试发现的问题,设计问题尽量通过静态测试发现,是测试工作的发展方向。,展望,近年来国内软件测试人员的需求不断扩大,越来越多的IT企业认识到了软件测试的重要性,越来越多的知名企业开始不惜重金聘请优秀的软件测试人员,这些都说明了软件测试职业的光明前景。因此,软件测试将会成为一个具有很大发展前景的行业,软件测试大有前途,市场需要更多具有丰富测试技术和管理经验的测试人员。这种可惜的现状与发展趋势一定会促进我国软件行业的发展。,致谢,本次的毕业论文设计经历了从文献综述、开题报告、论文的写作、论文修改以及最终定稿的过程。完整的过程中我得到了老师和同学们的指导、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论