版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件测试技术课程目的掌握软件测试的基本理论和基本方法;能熟练使用一些常用的测试工具;根据需求规格说明书和程序代码设计测试用例,并能运用测试工具进行测试;了解工程项目中软件测试的实施策略和实施过程;了解面向对象测试。课程要求了解软件测试的必要性和重要性;掌握功能性测试(黑盒测试)主要方法;掌握结构性测试(白盒测试)主要方法;掌握软件测试的层次(单元,集成,系统测试)
;掌握测试用例的编写方法,并能编写测试方案和测试报告;增强软件质量管理的意识。与其他课程的关系
本课程要求有一定图论基础和高级程序编程的经验,对本课程涉及到的软件开发、软件工程、面向对象分析与设计等知识较熟悉。前修课程:离散数学、C&C++程序设计、软件工程课程安排教学进度安排总学时:32学时成绩评定期末考试成绩100%教材及参考书1、教材范勇等.软件测试技术.西安:西安电子科技大学出版社,20092、参考书[1]郑人杰.计算机软件测试技术.北京:清华大学出版社,1992[2]朱少民.软件测试方法和技术.北京:清华大学出版社,2005[3](美)RonPatton著,周予滨姚静等译.软件测试.机械工业出版社,2002.2[4](美)PaulC.Jorgensen著韩柯杜旭涛译.软件测试.机械工业出版社,2003.7第一章软件测试基础本章内容软件测试的重要性软件测试的发展历程软件测试定义、目的、原则软件测试技术的分类测试人员的素质1.1软件测试的重要性1.软件缺陷与软件故障案例三个软件故障的例子Intel奔腾处理器故障1994年12月30日,美国Lynchburg大学的ThomasR.Nicely博士在一台奔腾PC机上做运算时发现,(4195835/3145727)*3145727-4195835不等于0千年问题20世纪70年代一个叫Dave的程序员,负责本公司的工资系统。他把4位数日期缩减为2位,例如1973年为73。因为工资系统极度依赖数据处理,Dava节省了可观的存储空间。2.测试是软件开发重要环节之一软件测试在软件生命周期中占据重要的地位;软件测试是软件质量保证的重要手段之一;1.2软件测试发展历程1.软件测试的发展历程20世纪50-60年代软件测试才开始与调试区别开来,成为一种发现软件缺陷的活动70年代以后软件技术的成熟和完善使得软件测试的规模和复杂度加大,软件测试也逐渐形成了一套完整的体系,逐渐走向规范化。20世纪80年代早期“质量”的号角才开始吹响20世纪90年代测试工具终于盛行起来?2.软件测试的现状与一些发达国家相比,国内测试工作还存在一定的差距。国内测试人员所占比例小,但是,在软件测试实现方面都是相当的,而且向产业化方向发展。3.测试技术发展软件验证技术静态测试技术自动化测试技术面向对象的测试技术1.3软件测试的定义根据侧重点的不同,主要有三种观点:
1)Myers认为“软件测试是为了发现错误而执行程序的过程”,明确提出了“寻找错误”是测试目的。2)1983年IEEE对软件测试的定义“使用人工或自动手段运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别”。明确地提出软件测试以检验是否满足需求为目标。3)从软件质量保证的角度看软件测试是一种重要的软件质量保证活动测试过程中的活动包括“分析”软件和“运行”软件。也有人认为软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。注意测试和调试的区别测试:找错误(证明程序有错)调试:改错误(使程序正确)1.4软件测试的目的基于不同的立场,存在着两种完全不同的测试目的:从用户的角度出发从软件开发者的角度出发缺陷!Myers软件测试目的(1)测试是程序的执行过程,目的在于发现错误(2)一个好的测试用例在于能发现至今未发现的错误;(3)一个成功的测试是发现了至今未发现的错误的测试。测试的“成功”与“失败”就在于:
能否发现错误!注意:测试不能表明软件中不存在错误,它只能说明软件中存在错误。测试真正的目的通过对软件错误的原因和分布进行归纳,来发现并排除当前软件产品的缺陷,对在需求和设计过程中存在的问题查缺补漏,从而确保软件产品的质量。1.5软件测试的原则1.所有的测试都应追溯到用户的需求系统中最严重的错误是那些导致程序无法满足用户需求的错误。
2.尽早地和不断地进行软件测试需求和设计时出现的缺陷占很大的比例;缺陷的修改成本随着阶段的推移将急剧上升;缺陷具有放大的特点;问题发现越早,解决问题的代价就越小。缺陷存在放大趋势3.不可能完全的测试输入量太大执行路径太多软件测试最致命的缺陷就是:
不能进行彻底的测试。为什么不可能做穷举测试
若X、Y为所有可能的整数,在字长32位机上测试:
X1、Y1
Z1
. . .
Xn、Yn
Zn
测试次数:n=232
232=264
1.84
1019程序PXYZ输入输出4.80-20原则测试发现的错误中80%很可能起源于20%的模块中。应孤立这些疑点模块重点测试。5.注意测试中的群集现象在所测程序段中,若发现错误数目多,则残存错误数目也比较多。6.避免测试自己的程序1.程序员轻易不会承认自己写的程序有错误;2.程序员的测试思路有局限性,做测试时很容易受到编程思路的影响;3.程序员测试不具有典型性7.设计周密的测试用例软件测试的本质就是针对要测试的内容确定一组测试用例。测试用例至少应包括:执行测试用例前,应满足的前提条件输入预期输出设计测试用例时,应当包括合理的输入条件和不合理的输入条件。8.回归测试程序修改后必须进行回归测试,避免引入新的错误。9.严格执行测试计划,排除测试的随意性。10.确认BUG的有效性
对测试错误结果一定要有一个确认的过程。有时候测试人员提交的BUG并不是真正的BUG。11.妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。人们对软件测试的误解误解一:测试是开发后期的一个阶段软件测试不等于程序测试软件测试应该涵盖整个软件生命周期;误解二:软件测试技术要求不高,比编程容易多了,随便找一个人就可以了。好的测试人员不仅要掌握各种测试技术和测试工具,还要具备丰富的编程经验和对BUG的敏感。误解三:测试要执行所有可能的输入;在实际测试中,穷举测试工作量太大,实践上行不通;寻找最小最重要的用例集合成为精简测试复杂性的一条必经之道。误解四:有时间就多测试一些,来不及就少测试一些。误解五:软件测试是测试人员的事,与开发人员无关。
误解六:调试和测试是一样的。误解七:软件测试就是运行一下软件,看看结果对不对。误解八:好的测试一定要使用很多的测试工具。千万不要将“测试”与“演示”混为一谈。1.6软件测试的对象软件测试并不等于程序测试软件测试贯穿于软件定义与开发的整个期间。软件测试的对象需求规格说明概要设计规格说明详细设计规格说明源程序1.7软件测试分类软件测试按阶段划分单元测试确认测试系统测试验收测试按测试技术灰盒测试白盒测试黑盒测试是否执行程序动态测试静态测试回归测试集成测试一、按是否执行被测软件划分: 静态测试不运行被测程序,而是通过在对软件进行分析、检查和审阅达到测试目的的动态测试通过运行软件来检验软件的动态行为和运行结果的正确性静态测试方法①代码审查;②代码走查;③桌面检查;④技术评审;静态测试除了进行人工测试外,还可以借助于计算机辅助分析。二、按软件测试用例设计方法的划分:黑盒测试(Black-BoxTesting)白盒测试(White-BoxTesting)灰盒测试(Gray-BoxTesting)黑盒测试黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能的情况下,通过测试来检测每个功能是否都能正常使用。白盒测试白盒测试也称结构测试或逻辑驱动测试,它是在知道它产品内部工作过程的前提下,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行。
三、按照软件测试的策略和过程划分:单元测试(UnitTesting)集成测试(IntegrationTesting)确认测试(ValidationTesting)系统测试(SystemTesting)验收测试(VerificationTesting)单元测试单元测试的对象是软件设计的最小单位——模块。单元测试的依据是详细设计描述,单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误。单元测试多采用白盒测试技术,系统内多个模块可以并行地进行测试。集成测试集成测试是组装软件的系统测试技术,按设计要求把通过单元测试的各个模块组装在一起之后,进行集成测试以便发现与接口有关的各种错误。系统测试系统测试是再真实或模拟系统运行的环境下,为验证和确认系统是否达到需求规格说明书规定的要求,而对集成的硬件和软件系统进行的测试。验收测试按照项目任务书或合同、供需双方约定的验收依据文档进行的整个系统的评测,决定是否接受或拒绝系统四、按测试实施组织划分开发方测试(α测试)用户测试(β测试)第三方测试五、按是否使用工具划分手工测试自动化测试测试类型按照企业中实际工作需要,测试主要包含下面的类型:(1)功能测试(2)接口测试(3)健壮性测试(4)强度测试(5)压力测试(6)性能测试(7)用户界面测试(8)安全测试(9)可靠性测试(10)安装/反安装测试(11)文档测试(12)恢复测试(13)兼容性测试(14)回归测试(15)α测试(16)β测试
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 长春金融高等专科学校《计量经济学》2025-2026学年期末试卷
- 中国医科大学《公司金融》2025-2026学年期末试卷
- 长春工程学院《海洋法》2025-2026学年期末试卷
- 扬州大学广陵学院《传媒伦理与法规》2025-2026学年期末试卷
- 扬州大学广陵学院《物流管理学》2025-2026学年期末试卷
- 徐州工程学院《口腔内科学》2025-2026学年期末试卷
- 长春科技学院《档案管理学》2025-2026学年期末试卷
- 徐州医科大学《工程结构荷载与可靠度设计原理》2025-2026学年期末试卷
- 长春电子科技学院《成人护理学》2025-2026学年期末试卷
- 宣化科技职业学院《劳动教育》2025-2026学年期末试卷
- 氧化铝制取全套教学教程整套课件全书电子教案
- 肩关节超声检查
- DL∕T 5783-2019 水电水利地下工程地质超前预报技术规程
- DZ∕T 0342-2020 矿坑涌水量预测计算规程(正式版)
- 0-36个月儿童中医药健康管理
- 《监理企业安全责任清单(2.0版)参考模板》
- 2024年证券从业考试题库及答案【全国通用】
- 有机化学反应和反应机理
- 大唐国际600MW仿真机题
- 燃气管道施工组织设计方案
- 法人代表代持协议书
评论
0/150
提交评论