软件测试复习重点.doc

上传人:汽*** 文档编号:561535400 上传时间:2023-09-24 格式:DOC 页数:27 大小:930.14KB
返回 下载 相关 举报
软件测试复习重点.doc_第1页
第1页 / 共27页
软件测试复习重点.doc_第2页
第2页 / 共27页
软件测试复习重点.doc_第3页
第3页 / 共27页
软件测试复习重点.doc_第4页
第4页 / 共27页
软件测试复习重点.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《软件测试复习重点.doc》由会员分享,可在线阅读,更多相关《软件测试复习重点.doc(27页珍藏版)》请在金锄头文库上搜索。

1、第1章1. 重要1. 软件测试的正面性观点【验证软件正常工作】 软件测试就是为程序能够按预期设想那样运行而建立足够的信心 【软件测试是一系列活动已评价一个程序或系统的特性或能力是否达到预期的结果】 测试是为了验证软件是否符合用户需求,即验证软件产品是够能正常工作2. 软件测试的反面性观点【测试是为了证明成粗有错误】测试是为了发现错误而执行的一个程序或者系统的过程3. IEEE 的软件测试定义使用人工或自动手段来运行或测试某个系统的过程,其目的是在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别4. 什么是“验证“验证”是检验软件是否已正确地实现了产品规格书所定义的系统功能和特性5

2、. 什么是“有效性确认”“有效性确认”是确认所开发的软件是否满足用户真正需求的活动软件测试是由“验证(Verification)”和“有效性确认(Validation)”活动构成的整体6. 软件测试和软件开发的关系2. 次重要1. 为什么要进行软件测试1.软件总存在缺陷2.软件中存在的缺陷给我们带来的算是是巨大的 3.测试所有工程学科的基本组成单元,自然也是软件开发的重要组成部分。 4.软件人员水平越高,找出问题的时间越早,软件越容易更正,产品发布后越稳定2. 软件测试的其它观点风险的观点:软件测试就是对风险的不断评估,引导软件开发的工,进而将最终发布的软件所存在的风险降到最低经济的观点:以最

3、小的代价获得最高的软件产品质量第2章1. 重要1. ISO 8492对质量的定义质量是产品或服务多满足明示或暗示需求能力的固有特性和特征的集合2. IEEE对软件质量的定义软件产品满足规定的和隐含的于需求能力有关的全部特性和特征3. McCall软件质量模型4. IEEE (1983) 729 软件缺陷一个标准的定义 从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题; 从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。5. 软件缺陷的产生原因1.技术问题(算法语法错误等) 2.团队合作(误解) 3.软件本省(文档错误,用户适用场合等)6. 软件缺陷构成规格说

4、明书缺陷最多7. 什么是软件评审及其分类评审是对软件元素或者项目状态的一种评估手段,以确定其是否与计划的结果保持一致,并使其得到改进。分类:管理评审、技术评审、文档评审、流程评审软件测试包含技术和文档评审,管理评审和流程评审则属于软件质量保证的组织和过程管理的活动内容8. 什么是软件质量保证软件质量保证是通过对软件产品有计划地进行评审和审计来验证软件是否合乎标准的系统工程,通过协调、审查、跟踪以获取有用信息,形成分析结果以指导软件过程。9. 软件测试的分类2. 次重要1. 什么是产品质量是人们实践产物的属性和行为,是可以认识,可以科学地描述的。并且可以通过一些方法和人类活动,来改进质量. 质量

5、模型: McCall 模型, Boehm 模型, ISO 9126 模型2. 什么是过程质量 软件能力成熟度模型 CMM 国际标准过程模型 ISO 9000 软件过程改进和能力决断 SPICE 3. ISO 9126软件内部/外部质量4. 软件缺陷的主要类型/现象1.功能、特性没有实现或部分实现2. 设计不合理,存在缺陷3. 实际结果和预期结果不一致4.运行出错,包括运行中断、系统崩溃、界面混乱5. 数据结果不正确、精度不够6. 用户不能接受的其他问题,如存取时间过长、界面不美观 5. SQA与软件测试有什么关系和区别SQA 是管理工作、审查对象是流程、强调以预防为主测试是技术工作、测试对象是

6、产品、主要是以事后检查SQA指导测试、监控测试测试为SQA提供依据第3章1. 重要1. 什么是静态的和动态的测试静态测试包括对软件产品的需求和设计规格说明书的评审、对程序代码的复审等动态测试是通过真正运行程序发现错误,通过观察代码运行过程,来获取系统信息,对系统行为进行验证。2. 什么是自动测试和手工测试3. 什么是黑盒和白盒测试白盒:已知程序的内部工作过程 黑盒:完全不考虑程序内部结构和内部特性4. 什么是主动测试和被动测试主动测试方法:测试人员主动向被测试对象发送请求、或借助数据、事件驱动被测试对象的行为,从而验证被测试对象的反应或输出结果被动测试方法:测试人员不干预产品的运行,而是被动地

7、监控产品在实际环境中运行,通过一定的被动机制来获得系统运行的数据,包括输入、输出数据.5. 什么是形式化方法形式化方法实际上就是基于数学的方法来描述目标软件系统属性的一种技术6. 什么是基于模型的软件测试 基于模型的测试(Model-based testing,MBT)是利用模型来生成相应的测试用例,然后根据实际结果和原先预想的结果的差异来测试系统 先从概念上形成模型,然后试图用数学的方法来描述这个模型,形成仿真模型,完成所需的测试7. 语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖的概念,以及测试用例的设计。 语句:覆盖每个可执行语句 判定:每个判断的取真分支和取假分支至

8、少经历一次,即判断真假值均曾被满足【又称为分支覆盖】 条件:每个判断中每个条件的可能取值至少满足一次。(不考虑通过的路径) 判定条件:判断条件中的所有条件可能取值至少执行一次,同时,所有判断的可能结果至少执行一次【假如两个判断,每个判断2个条件,则需要2个测试用例,即T1T2T3T4 F1F2F3F4】p34 条件组合:每个条件的所有可能至少出现一次,并且每个判断本身的判定结果也至少出现一次。【需要4个,即T1T2 T1F2 F1T2 F1F2 T3T4.,然后覆盖这8个组合,即T1T2T3T4,T1F2T3F4,F1T2F3T4,F1F2F3F4】p358. 基本路径测试的概念 在程序控制流

9、程的基础上,分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例。9. 依据代码绘制程序控制流图10. 计算流图的圈复杂度M-N+211. 确定线性独立路径的基本集合P37 独立路径: 至少引入一系列新的处理语句或条件的任何路径由基本集导出的测试用例,保证每行代码语句至少被执行一次 ;基本集合不一定唯一12. 等价类划分法、边界值分析法、判定表方法的概念,以及测试用例的设计 ONE. 有效等价类 无效等价类1. 格式 *位数字 含有非数字字符 小于*位。2. 范围 ()() 小于0 大于 测试用例 输入数据 覆盖等价类 1 * 2 * 针对Test函数按照基本路径测试方法设计测试

10、用例。int Test(int i_count,int i_flag)1int i_temp=0;2while(i_count0)3if(0=i_flag)4i_temp=i_count+100;break;else5if(1=i_flag)6i_temp=i_temp+10;else7i_temp=i_temp+20;8i_count-;9return i_temp;先画程序流程图(流程控制图),然后计算环路复杂度,环路复杂度为G,则找出G条基本路径。TWO.判定表:条件: 动作: 然后画表格,N个条件2N列THREE.边界值分析: 范围:1输入条件规定了值得范围,则取刚刚达到这个范围的边界

11、值和刚刚超过边界的值(最大值、比最大值大一、最小值、比最小值小一) 2规定了值的个数,则用最大个数、比最大个数大一、最小个数、比最小个数小一 3给出的输入域或者输出域是有序集合(有序表、顺序文件),则应选取集合的第一个和最后一个元素作为测试数据13. 因果图法、正交试验法的概念因果图法多种输入条件的组合,产生多种结果设计测试用例正交试验法依据Galois理论,从大量的(实验)数据(测试例)中挑选适量的有代表的点(条件组合),从而合理地安排实验(测试)的一种科学实验设计方法。L8(27)代表8行7列【正交表】2. 次重要1. 通过维恩图考察测试2. 功能图法功能图由状态迁移图(STD)和逻辑功能

12、模型( LFM)构成功能图法是综合运用黑盒方法和白盒方法来设计测试用例,即整体上选用白盒方法路径覆盖、分支和条件覆盖等,而局部上选用的是黑盒方法决策表或因果图方法3. 错误推测法基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例4. 形式化的具体方法基于模型的方法,如Z语言、B语言等代数方法,如OBJ、CLEAR、ASL、ACT等过程代数方法,如CSP、CCS、ACP、LOTOS、TPCCS等基于逻辑的方法,如区间时序逻辑、Hoare 逻辑、模态逻辑、时序逻辑、时序代理模型等。基于网络的方法5. 形式化验证的一些具体方法1.有限状态机(FSM)或扩展有限状态机(EFSM

13、)2.SPIN和线性时态语言3.UML语义转换 4.标准RBAC模型5.扩展的RBAC模型和基于粒计算的RBAC模型6.符号模型检验 7.BAN逻辑模型6. 软件测试模型故障模型 安全漏洞模型 差性能模型 并发故障模型 不良习惯模型代码国际化模型 易诱骗代码模型7. 扩展有限状态机方法EFSM在FSM模型基础上增加了动作和转移的条件,以处理数据流问题,FSM只能处理系统的控制流问题8. 基于风险的测试基于风险的测试是指评估测试的优先级,先做高优先级的测试,如果时间或精力不够,低优先级的测试可以暂时先不做9. 模糊测试方法模糊测试(Fuzz testing)方法,简单的说,就是构造大量的随机数据

14、作为系统的输入,从而检验系统在各种数据情况下是否会出现问题模糊测试方法可模拟黑客对系统发动攻击测试10. ALAC测试和随机测试方法ALAC,是Act-like-a-customer(象客户那样做)的简写,ALAC测试方法是一种基于客户使用产品的知识开发出来的测试方法,它的出发点是著名的Pareto 80/20规律第4章1. 重要1. 用V模型诠释软件测试过程【v模型不同步,W模型同步】2. W模型3. TMM【吸收CMM的精华,基于历史演化的测试过程,业界的最佳实践】组成:(1)5个别级的一系列测试能力成熟度的定义,每个级别的组成包括到期目标、到期子目标活动、任务和职责等。(2)一套评价模型,包括一个成熟度问卷、评估程序和团队选拔培训指南。 2. 次重要1. TMapTMap (Test Management Approach,测试管理方法)是一种结构化的、基于风险策略的测试方法体系, 目的能更早地发现缺陷,以最小的成本、有效地、彻底地完成测试任务,以减少软件发布后的支持成本。TMap所定义的测试生命周期由计划和控制、准备、说明、执行和完成等阶段组成【TMap的基石:与软件开发生命周期一致的测试生命周期L,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号