下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 12/12测试基础知识总结 目录: 第一章、软件工程学 第二章、软件测试基础 第三章、基于生命周期软件测试 第四章、软件测试分类与分级 第五章、软件缺陷管理(*)常见缺陷状态说明(*)第六章、软件测试过程及管理(*)测试计划(*)第七章、软件静态测试 第八章、动态测试 第一章、软件工程学 1.软件的定义:软件由数据:该程序能够具体满意地处理信息的数据结构程序:当运行时, 能够提供所要求功能和性能的指令或计算机程序集合;文档:描述程序功能需求以及程序如何操作和使用文档。 2.软件危机的产生:软件危机是指落后的软件生产方式无法满足迅速增长的计算机软件需 求,从而导致软件开发与维护过程中出现一系列
2、严重问题的现象。 3.软件危机的原因1)需求不明确2)缺乏正确的理论指导3)软件开发规模越来越大4) 软件开发复杂度越来越高 4.消除软件危机的办法对计算机软件有一个正确的认识(软件程序)充分认识到软件 开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目推广使用在实践中总结出来的开发软件成功技术和方法开发和使用更好的软件工具 5.软件工程 方法 项目计划与估算需求分析数据结构总体设计编码、测试与维护等 工具 软件工具软件支撑环境计算机辅助软件工程(CASE)等 过程 方法使用的顺序需交付的文档变更管理里程碑管理等 软件生命周期(*)SRS:计划
3、,分析,设计,编码,测试,运行和维护。 软件生命周期模型(*) 瀑布模型: V模型强调软件开发的协作和速度,将软件实现和验证有机地结合起来,在保证较高的软件质量情况下缩短开发周期。 迭代模型: 4.1 敏捷开发的定义是一种以用户的需求进化为核心、迭代、循序渐进的开发方法。 敏捷开发的特点:变强调软件开发对未来可能出现的变化和不确定性做出全面反应 早总体目标是尽可能早地、持续地对有价值软件的交付 快主要是用于需求模糊或快速变化的前提下,小型开发团队的软件开发活动 软件开发主流技术 主机终端模式 文件服务器模式 C/S模式客户/服务器模式 胖客户/瘦服务器 、微信、王者荣耀 B/S模式浏览器/服务
4、器模式 瘦客户/胖服务器 Web 、洛克王国 第二章、软件测试基础 (一共有三个)现代定义:是对软件需求分析、设计、编码的最终复查的一系列过程,是软件质量保证的关键步骤 目的:1.发现缺陷,提高质量2.验证是否满足需求3.建立软件质量的信心 3.测试的7个原则:1.测试显示缺陷存在2.穷尽测试是不可能的3.测试尽早介入 4.缺陷集群性 5.杀虫剂悖论 6.测试活动依赖于测试背景 7.没有失效不代表系统是可用的 缺陷的原因1.人本身容易犯错误2.时间的压力3.复杂的外部系统4.技术的革新5.复杂的代码6.复杂的系统架构 软件测试工作是验证软件系统是否满足软件用户的需求 测试流程 工具 商业化的测
5、试工具: 测试管理工具: HP ALM/QC 自动化测试工具: HP UFT(QTP & Service Test) 性能测试工具: HP Loadrunner 安全测试工具: HP Fortify、WebInspect 开源测试工具: Testlink、禅道、Mantis、BugZilla、selenium、Jemeter、 JUnit、CppUnit 认识误区 1.软件开发完成后进行软件测试 2.软件发布后如果发现质量问题,那是软件测试人员的错 3.软件测试是软件开发的对头 4.软件测试是没有前途的工作,只有程序员才是软件高手 5.期望用测试自动化代替大部分人工劳动 6.认为软件测试文档不
6、重要 第三章、基于生命周期软件测试 生命周期测试方法意味着测试与软件开发平行 生命周期测试应伴随整个软件开发周期,此时测试的对象不仅仅是程 序,需求、功能和设计同样要测试 软件开发的所有阶段进行测试,被设计用来减少测试成本 测试与开发同步进行,有利于尽早地发现问题,同时缩短项目的开发 建设周期 2、软件生命周期的六个阶段: 需求:(需求阶段测试很重要) 验证和确认需求说明书、制定测试计划 测试需求、组织团队、测试计划 设计:(包括概要设计和详细设计) 验证和确认设计文档、模型等,测试设计及评审 测试方案、测试案例等 编程:代码、评审、搭建环境、单元测试 测试案例及缺陷等 测试:执行测试、缺陷管
7、理 缺陷报告和测试报告 安装:安装测试、确认产品 安装程序、安装文档、用户手册等 维护:培训、维护、变更管理、测试 维护手册、测试报告等 第四章、软件测试分类与分级 软件测试分类:一般分类 是否关心内部结构 白盒测试、黑盒测试、灰盒测试 开发过程级别 单元测试、集成测试、系统测试、验收测试 是否执行程序 静态测试、动态测试 执行过程是否需要人工干预 手工测试、自动化测试 测试实施组织 开发测试、用户测试、第三方测试 软件配置缩写为CSCI分类 计算机软件配置项:定义 是为独立的配置管理而设计的且能满足最终用户要求的一组软件,简称软件配置项 软件开发过程中,代码、文档、报告等工作成果 软件配置管
8、理 控制软件配置项的投放和变更,并且记录并报告配置的状态和变更要求,验证配置的完整性、正确性和一致性 基线 即:软件技术状态基线 任何软件配置项,一旦形成文档并审议通过,即成为基线 每个基线都是下一步开发的出发点和参考点 里程碑 人为的,时间的虚点。 质量特性分类:功能性、可靠性、可用性、效率、维护性、可移植性 重点 非功能测试:负载测试性能测试容量测试压力测试稳定性测试兼容性测试文档测试 软件测试的分级: 第五章、软件缺陷管理(*)常见缺陷状态说明(*) 软件缺陷定义 计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。 错误:不符合文档编制与编码规定测试过程不足规
9、程错误文档编制错误需求的不完善定义编码错误逻辑设计错误客户开发者通信失败对软件需求的故意偏离缺陷基本信息:标识(Identifier) 报告人报告日期程序的名称版本号缺陷类型(Type) 严重性(Severity) 优先级(Priority) 关键词缺陷描述重现步骤结果对比附件 1、按软件生命周期分类有用户需求错误、产品需求错误、设计 错误、编码错误、数据错误、发行错误 2、按软件使用分类有功能错误、性能错误、界面错误、流程错 误、数据错误、提示错误、常识错误以及其他错误 3、按GB/T 15532-2008分类有程序问题、文档问题、设计问 题及其它问题 优先级 High 缺陷应该立即被解决(
10、不符合系统的设计或某一主要功能无法实现) Middle 缺陷需要正常排队等待修复或列入软件发布清单(某些非总要的功能未能实现,但不影响其他功能) Low 缺陷可以在方便的时候被纠正(不影响系统的功能实现,如提示信息错误,错别字等)严重程度 Urgent Very High High Medium Low 缺陷报告的主要内容 缺陷的标题与简单描述 缺陷的基本信息 复现缺陷的操作步骤 缺陷的实际结果描述、期望的正确结果描述 解释文字和截取的缺陷图像 缺陷报告的撰写标准 准确 清晰 简洁 一致 完整 软件测试过程度量 测试覆盖率 设计测试用例的需求数/需求总数 测试执行率 已执行的测试用例数/设计的
11、测试用例总数 测试执行通过率 执行结果为通过的测试用例数/实际执行的测试用例数 缺陷解决率 已关闭的缺陷数/缺陷总数 缺陷管理的意义1. 通过推广专业的技术找到隐藏的缺陷 2. 通过准确的文档报告缺陷 3. 通过良好的沟通使缺陷尽快解决 4. 通过良好的措施减少和预防缺陷的发生 5. 通过合适的工具管理缺陷报告 6. 通过优化的流程推进缺陷的生命周期 7. 通过缺陷数据的分析及时找到问题和根源 8. 通过角色的分工促进团队协作 9. 通过明确的分级确保优先的处理 10.通过缺陷三方会审一起做出正确决策。 软件缺陷的度量分析统计。 缺陷管理工具 mantis(免费) 收费:Rational Cl
12、ear Quest,URTracker,TestDirector 免费:Bugfree,Bugzilla 第六章、软件测试过程及管理(*)测试计划(*) 软件测试过程模型 开发模型 瀑布、增量、迭代、原型、敏捷、螺旋 测试模型 V定义:不同测试阶段和开发过程期间各阶段的对应关系 W特点:增加软件各开发阶段中应同步进行的验证和确认活动 V和W的局限性 串行活动,无法更好适应变更 线性的前后关系,无法有效支持迭代 测试完整性不足 H的特点 测试是一个独立的流程 贯穿整个生命周期 尽早准备尽早执行 测试分层次进行,不同层次的测试按照某个次序先后进行,也可以重复进行测试过程中活动 需求分析 制定测试计
13、划 设计用例 执行测试用例 追踪缺陷 测试报告评估 度量指标 测试覆盖率 已设计测试用例的需求数/需求总数 测试执行率 已执行的测试用例数/设计的测试用例总数 测试执行通过率 执行结果为通过的测试用例数/实际执行的测试用例数 测试缺陷解决率 已关闭的缺陷数/缺陷总数 TMM为测试成熟度模型TMM的五个级别:初始级,定义级,集成级,管理和测量级,优化、预防缺陷和质量控制级 软件成熟度模型(CMM) CMM的五个级别: ?初始级、可重复级、定义级、管理级、优化级 1)测试计划 软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试 策略测试方法、测试区域、测试配置、测试周期、测试资源、测试交
14、流、风险分析等内容。 2)测试计划的编写内容 测试环境 测试基本原理和策略 测试计划阶段划分 测试计划要点 功能描述和功能覆盖说明 测试用例清单 测试开始和退出准则 3)3)软件测试需求收集途径 与被测软件相关的各种文档资料 与客户或系统分析员的沟通 业务背景资料 正式与非正式的培训 其他 4)4)软件测试需求的评审 内容 完整性审查准确性审查 方式 相互评审、交叉评审轮查走查小组评审审查 评审人员组成 开发经理项目经理测试经理系统分析人员相关开发人员测试人员等 5)测试设计与开发的主要内容 - 制定测试技术方案、设计测试用例 - 选择测试工具 - 开发脚本 - 测试环境的设计 6)测试执行分
15、类,测试用例执行的跟踪,BUG的跟踪和管理 7)描述要执行的软件测试及测试的结果 ?常见软件测试文档:测试方案、测试计划、测试需求、测试用例、缺陷 报告、测试报告等 第七章、软件静态测试 1、概念 通常是指不执行程序代码而寻找代码中可能存在的错误或评估程序代码的过程。 2、对象 各种与软件相关的有必要进行测试的产物,比如各类文档、源代码等。 3、引入的目的 1、软件产品内部结构复杂、混乱,代码的编写也没有规范,使得软件内部存在一些不易被察觉的错误。 2、软件产品需要升级维护时,由于程序的复杂度和代码编写的混乱,维护工作很难进行。 3、静态测试所要做的就是对代码标准以及质量进行监控,以此来提高代
16、码的可靠性,使系统的设计符合模块化、结构化、面向对象的要求。 4、特点 1、不必动态地运行程序。 2、可以人工进行,充分发挥人的思维优势。 3、不需要特别的条件,容易展开。 4、对测试人员要求比较高。 5、主要内容 1、各阶段的评审 一般评审包括:培训评审、同行评审,我们所关心的是同行评审 1、概念 同行评审是由开发软件产品以外的其他人检查工作产品,以发现缺陷并寻找改进的机会 2、同行评审的方法 评审方法是评审参与者通常采用一行一行仔细阅读被评审对象的形式发现被测对象中的缺陷 1、临时评审(最不正式) 找团队同事帮忙,不一定是一对一,可以找很多人帮忙 2、同级桌查 一对一,没有标准的流程,过程
17、由主持 3、走查 一对多,没有标准的流程,过程由主持 4、小组审查 轻量级的比较正式的审查,没有相应的评审标准 5、审查(最正式) 有会前准备和严格的评审标准,发现问题最多,代价最高 3、评审的时间点 一般设在工作产品到达了一个完成的里程碑并即将进入下一个开发阶段时 2、代码检查 主要检查代码和设计的一致性、代码对标准的遵循、代码的可读性、代码的逻辑表达正确性,代码的合理性 3、软件复杂性分析 主要包括软件复杂性度量与控制,面向对象的软件复杂性度量 4、软件质量度量 就是从整体上对软件质量进行评测,用于软件开发中对软件进行质量控制,并最终对软件产品进行评价和验收 第八章、动态测试 白盒测试 “
18、白盒”测试又称为结构测试或逻辑驱动测试是一种按照程序内部逻辑结构和编码结构设计测试数据并完成测试的一种测试方法。 静态白盒测试技术 同行评审 审查 小组审查 走查 桌查 临时评审 代码检查逻辑覆盖 语句覆盖 语句覆盖是最起码的测试要求,使得每一条语句至少被执行一次 对程序的逻辑覆盖很少,只关心判定表达式的值,是很弱的逻辑覆盖标准。 判定覆盖 要求设计足够的测试用例,使得程序中的每一个分支至少通过一次即每一条分支语句的“真”值和“假”值都至少执行一次。 条件覆盖 不仅每一个语句至少执行一次,使得判定中的每个条件获得各种可能的结果。 判定覆盖只关心整个判定表达式的结果,条件覆盖关心的则是每个条件各
19、种取值的结果。判定/条件覆盖 设计足够多的测试用例,使得判定中每个条件的所有可能取值至少能够获取一次,同时每个判断的所有可能的判定结果至少执行一次。 条件组合 要求设计足够多的测试用例,使得每个判定中条件的各种组合至少出现一次。 满足条件组合覆盖标准的测试用例,也一定满足判定覆盖、条件覆盖和判定/条件覆盖标准 路径覆盖 要求设计足够多的测试用例, 使得程序中所有的路径都至少执行一次。 路径测试 概念 根据程序的逻辑控制所产生的路径进行测试用例设计的方法。 控制流图 定义 程序流程图又称框图,是我们最熟悉,也是最容易理解的一种程序控制结构的图形表示。在这种图上的框里面常常标明了处理要求或者条件,
20、但是,这些标注在做路径分析时是不重要的。为了了更加突出控制流的结构,需要对程序流程图做一些简化,这种简化了的程序流程图叫做控制流图。 在控制流图的两种图形符号 节点 以标有编号的圆圈表示。它代表了程序流程图中矩形框(处理)、菱形(两个到多个出口判断)以及两条到多条流线相交的汇合点。 控制流线或弧 以箭头表示。它与程序流程图中的流线是一致的,表明了控制的顺序。为了方便讨论,控制流线通常标有名字,如图中所标的a、b、c等。 控制流图简化 化简:若在一个节点序列中没有分支,则可以把这个序列的节点都合并成一个节点。 McCabe圈复杂度 定义 把程序结构的控制流程图转化为有向图(即程序图),然后计算强
21、连通有向图的环数来衡量软件的质量,用此方法得到的复杂度称为圈复杂度。(为了使之强连通,我们可以从出口点到入口点画一条虚弧。) 公式 V(G)=m-n+p G是强连通有向图 V(G)是强连通有向图G中的环数 m是G中的弧数 n是G中的节点数 p是G中分离部分的数目,对于一个正常的程序来说,程序图总是连通的,即p=1 基本路径测试步骤 1) 根据过程设计结果画出相应的流图 2) 计算控制流图的圈复杂度 3) 确定线性独立路径的基本集合 4) 设计可强制执行基本集合中每条路径的测试用例 黑盒测试 定义 把测试对象当作看不见内部的黑盒,在完全不考虑程序内部结构和 处理过程的情况下,测试者仅依据程序功能
22、的需求规范考虑,确定 测试用例和推断测试结果的正确性 作用 黑盒测试法注重于测试软件的功能需求,主要试图发现以下错误 1. 初始化和终止错误; 2. 功能不正确或遗漏; 3. 界面错误; 4. 输入和输出错误; 5. 数据库的访问错误; 测试用例方法 等价类划分法 定义 等价类,把所有可能的输入数据,即程序的输入域划分成若干部分, 划分,从每一部分中选取少数有代表性的数据做为测试用例,代表性数据等同于该类中的其他值 等价类划分 有效等价类 对于程序规格说明来说,是合理的,有意义的输入数据构成的集合无效等价类 对于程序规格说明来说,是不合理的,无意义的输入数据构成的集合划分方法 按区间划分 按数
23、值划分 按数值集合划分 按限制条件或规划划分 按处理方式划分 边界值分析 定义 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法,稍高 于其边界值及稍低于其边界值的一些特定情况 分析方法 边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法,稍高于其边界值及稍低于其边界值的一些特定情况 分析原则 如果输入条件规定了值的范围,则应取刚达到这个范围的边界值,以及刚刚超越这个范围的边界值作为测试的输入数据。 如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为册数数据。 根据规格说明的每个输出条件,使用原则1) 如果程序的规格说明给出的输
24、入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。 分析规格说明,找出其他可能的边界条件。 因果图 定义 是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,该方法充分考虑了输入情况的各种组合及输入条件之间的相互制约关系。 基本步骤 分析软件规格说明描述:原因、结果、标识符 分析软件规格说明描述中的语义:找出逻辑关系 由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现,添加必要的约束条件 把因果图转换成判定表 把判定表的每一列拿出来作为依据,设计测试用例 因果图关系 恒等 若C1是1,则E1也是1;否则E1为0。 非 若C1是1,则E1是0;否则E1是1。 或 若c1或c2是1,则E1是1;否则E1为0,或”可有任意个输入。 与 若c1和c2都是1,则E1为1;否则E1为0, 与”也可有任意个输入。 因果图约束 E约束(互斥/异) a和b中至多有一个可能为1,即a和b不能同时为1。 I约束(或) a、b和c中至少有一个必须是1,即a、b 和c不能同时为0。 O约束(唯一) a和b必须有一个,且仅有1个为1。 R约束(要求) a是1时,b必须是1,即不可能a是1时b是0。 M约束(屏蔽/强制) 若结果a是1,则结果b强制为0。 随机数法 定义 随机测试指测试输入数据是所有可能输入值中随机选取的,是一种基本
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 矿山安全作业与应急预案(标准版)
- 消防安全检查与应急处理操作指南(标准版)
- 2025年楼层主管工作总结及2026年工作计划
- 桥梁墩柱施工专项方案(最终版)
- 2025年青岛城市轨道交通科技有限公司社会招聘(12人)笔试历年难易错考点试卷带答案解析
- 2025年安全生产月工贸行业安全培训考试题带答案
- 传染病诊断标准及报告规范培训试题(附答案)
- 2025年山东海洋集团有限公司社会招聘和校园招聘(41人)笔试历年难易错考点试卷带答案解析
- 2025年安徽交运集团滁州汽运有限公司凤阳城市公交招聘1人笔试历年难易错考点试卷带答案解析2套试卷
- 2025年6月贵州丰穗发展运营(集团)有限公司招聘16人笔试历年备考题库附带答案详解2套试卷
- 鹦鹉热治疗讲课件
- 江西司法警官语言测试题及答案
- T/CWAN 0015-2020钎焊接头质量评价规范
- 计量经济学基础-计量经济学1学习资料
- 水电合同协议模板下载
- 花球啦啦操课件
- 《留置导尿护理指南》课件
- 厨房油锅起火培训
- 陕旅版三年级英语下册教学计划
- 绿色施工实施策划方案
- 中华民族共同体概论讲稿专家版《中华民族共同体概论》大讲堂之 第十四讲 新中国与中华民族的新纪元(1949-2012)
评论
0/150
提交评论