最新软件测试的期末复习资料讲解学习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件测试的重点
第一章
P4 软件缺陷:它是计算机系统或者程序中存在的任何一种破坏正常运行能力的问题,错误,
或者隐藏的功能缺陷,瑕疵。注:软件缺陷出现最多的阶段是需求规格说明书。
P9软件测试的定义:软件测试为了发现程序中的错误而执行程序的过程。
{软件测试的目的:就在于在软件投入运行之前,尽可能多地发现软件中的错误。===测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。}
实现此目的的核心是测试用例的设计。判断软件测试的成功与失败:一个好的测试用例在于发现还未曾发现的错误,成功的测试是发现了错误的测试。
软件测试的目标是为了检验软件系统是否满足用户的需求。
调试和测试的区别:首先调试是由程序员编试的,且调试是在测试之前。/////调试是一个随机的、不可重复的过程,目的是寻找错误的原因和具体的位置,并修复错误。调试一般
在测试前进行。
4.优秀的软件测试员应具备的素质:
1 软件测试人员是群探索者。
2 软件测试人员是故障排除员。
3 软件测试人员不放过任何蛛丝马迹。
4 软件测试人员具有创造性。
5 软件测试人员是群追求完美者。
6人员判断准确。
7 软件测试人员注重策略和外交。
8 软件测试人员善于说服。
5. P12软件测试的分类:
1.从是否需要执行被测软件的角度(程序是否运行的角度):软件测试可分为静态测试和动态测试。其中静态测试可分为(1)代码检查法(2)静态结构分析法(3)代码度量质量法其中动态测试分为(1)黑盒测试和白盒测试
###二者的区别:静态测试不实际执行程序,而是利用人工手段及静态测试工具完成对程序的静态测试。主要目的是检查软件的表示与描述是否一致,没有冲突和歧义。而动态测
试则是实际运行测试用例,以发现软件中的错误。
### 静态测试和动态测试的时序关系:
一般可先进行静态测试,即代码检查法、静态结构分析法、代码质量度量法等进行测试;
然后进行动态测试,即逻辑覆盖法、基本路径测试法、程序插桩等进行测试。
2.从软件测试用例设计方法的角度(从测试的策略):可分为黑盒测试和白盒测试
(1)黑盒测试是一种从用户角度出发的测试,又称为功能测试,数据驱动测试和基于规格说明的测试。(2)白盒测试基于产品的内部结构来进行测试,检查内部操作是否按规
定执行,软件各个部分功能是否得到充分利用,又称为结构测试,逻辑驱动测试和基于程序的测试,即根据被测程序的内部结构设计测试用例,测试者需要事先了解被测程序的结构。
3.按照软件的开发阶段分类:软件测试可分为单元测试,集成测试,确认测试,系统测试和验收测试。
4.按照实施测试的组织,可将测试分为Alpha测试、Beta测试及第三方测试。(1). Alpha测试
Alpha测试属于开发方进行,指软件开发组织公司内部人员模拟各类用户对即将交付的
软件产品进行测试,以发现其中的错误并改正。
(2 ).Beta测试
Beta测试是用户进行的测试,但通常不等同于验收测试,即决定是否接受软件并不是Beta测试的目的。 Beta测试的目的在于帮助开发方在正式发布软件产品前对其进行最后
的改进。
(3 )第三方测试
第三方测试是指由不同开发方和用户方的组织进行的测试。
6.软件测试技术的发展历史和现状
(1)软件测试技术的发展历史
●20世纪50年代,英国,图灵给出了软件测试的原始定义。
●1957年,测试是发现软件潜在错误和缺陷的活动。
●1972年,北卡罗纳大学举行了首届软件测试正式会议。
●1975年,John Good Enough 和Susan Gerhart 发表了名为《测试数据选择的原理》文章。
●1979年,G冷ford J.Myers的著作《软件测试的艺术》是软件测试领域一本重要的专
著。
●20世纪90年代,软件测试得到了快速的发展。
(2)软件测试的现状
在软件发达的国家得到软件从业人员的普遍重视,已经形成了一个独立的产业,发展
程度较高。另外,软件测试发展趋势很好,已经成为了一个独立的流程。
第二章软件测试过程与策略
1.软件测试的误区:误区 1 测试和调试是一回事。误区 2 可以对软件进行穷举测试。
误区3 若交付使用的软件有缺陷,是测试人员的失职。误区4 关注测试的执行而忽略测试用例的设计。误区 5 测试比编程容易多。误区 6 测试是编码之后进行的工作。
误区7 测试自动化是万能的。误区8 软件测试是一种破坏性工作。(软件测试是破坏性的
工作)。
2. p25(1)单元测试(又称模块测试):定义:它是对软件基本组成单位进行的测试,单元
测试的对象是软件设计的最小单位————模块。
单元测试的主要内容:模块接口测试,局部数据结构测试,独立路径测试,出错处理测试,
边界条件测试。
单元测试的步骤:驱动模块(函数,被测模块):相当于被测模块的主程序,它接收测试
数据,把这些数据传送给被测模块,最后输出实测的结果。桩模块:用以代替被测模块调
用的子模块。(函数调用其他函数)
3.p34确认测试定义:最严格的解释是检验所开发的软件是否能按用户提出的要求运行。
确认测试的目的:是检查已实现的软件系统是否满足需求规格说明书中的规定的各种需求。
确认测试的依据:需求规格说明书
4.p41验收测试:定义:是向未来的用户表明系统能够像预定要求的那样工作。(验收测
试即按项目任务书或合同、供需双方约定的验收依据文档对整个系统进行测试与评审,以
决定是否接受软件系统。)需要用户的参与。