0


软件测试知识梳理与期末复习

文章目录


章节重要程度 3 > 1、2、4、5、6、7 > 10、13

Ch1 引论

  1. 软件测试的价值 - 全面评估产品质量,获得有关产品质量的全面、客观的信息- 发现问题,督促问题解决,提高产品质量- 持续提供质量反馈、及时揭示质量风险,有助于控制项目风险,提高构建的质量- 通过缺陷分析,获得缺陷模式,有助于缺陷预防
  2. 软件测试的观点 正反两个方向的思维: - 正向思维:验证软件正常工作 -> 评价一个程序或系统的特性或能力并确定是否达到预期的结果 -> 在设计规定的环境下运行软件的所有功能,直至全部通过。- 逆向思维:假定软件有错误 -> 测试是为发现错误而针对某个程序或系统的执行过程 -> 寻找容易犯错误的地方和系统的薄弱环节,试图破坏系统,直至找不出问题。
  3. 测试与开发的关系 测试与开发有一对一的关系 V模型从4个层次完成软件的验证,即对需求、系统架构设计、详细的产品设计和代码的验证 1. 需求验证对应验收测试,客户需求的确认测试2. 系统架构设计的验证对应系统非功能性测试3. 产品详细设计的验证对应功能测试4. 代码的验证对应单元测试和集成测试V模型

Ch2 软件测试的基本概念

  1. 测试的分类 - 按测试的对象或范围分类,如单元测试、文档测试、系统测试等)- 按测试目的分类,如功能测试、回归测试、性能测试、可靠性测试、安全性测试和兼容性测试等- 根据测试过程中被测软件是否被执行,分为静态测试和动态测试- 根据是否针对系统的内部结构和具体实现算法来完成测试,可分为白盒测试和黑盒测试测试的分类
  2. 静态、动态、白盒、黑盒测试以及不同的测试的组合 - 静态测试包括对软件产品的需求和设计规格说明书的评审、对程序代码的复审等。静态分析的查错和分析功能是其他方法所不能替代的,可以采用人工检测和计算机辅助静态分析手段进行检测,但越来越多地采用工具进行自动化分析- 动态测试是通过真正运行程序发现错误,通过观察代码运行过程,来获取系统信息,对系统行为进行验证。- 白盒测试,也称结构化测试或逻辑驱动测试,也就是已知产品的内部工作过程,清楚最终生成软件产品的计算机程序结构及其语句,按照程序内部的结构测试程序,测试程序内部的变量状态、逻辑结构、运行路径等,检验程序中的每条通路是否都能按预定要求正确工作,检查程序内部动作或运行是否符合设计规格要求,所有内部成分是否按规定正常进行- 黑盒测试方法,也称数据驱动测试方法,在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下﹐测试人员针对软件直接进行测试,检查系统功能是否按照需求规格说明书的规定正常使用、是否能适当地接收输入数据而输出正确的结果等,检查相应的文档是否采用了正确的模板、是否满足规范要求。白盒测试和黑盒测试

Ch3 软件测试方法

  1. 等价类划分测试 等价类是某个输入域的子集,在该子集中每个输入数据的作用是等效的。分为有效等价类和无效等价类。1. 确定等价类的方法: - 在输入条件规定了取值范围或者个数的前提下,则可以确定一个有效等价类和两个无效等价类。例如,程序输入条件为满足小于100大于10的整数α,则有效等价类为10 < α < 100,两个无效等价类为 α < 10和 α > 100。- 在输入条件规定了输入值的集合或者规定了“必须如何”的条件下,可以确定一个有效等价类和一个无效等价类。例如,程序输入条件为 α = 10,则有效等价类为 α = 10,无效等价类为 α ≠ 10。- 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。例如,程序输入条件为 BOOL α = true,则有效等价类为 α = true,无效等价类为 α = false。2. 根据等价类创建测试用例的步骤 a) 建立等价类表,列出所有划分出的等价类 b) 为每个等价类规定一个唯一的编号 c) 设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类 d) 重复c),最后使得所有有效等价类均被测试用例所覆盖 e) 设计一个新的测试用例,使其只覆盖一个无效等价类 f) 重复e)使所有无效等价类均被覆盖
  2. 判定表方法——如何构造判定表1. 列出所有的条件桩和动作桩;2. 填入条件项;3. 填入动作项,制定初始判定表;4. 简化、合并相似规则或者相同动作
  3. 各种覆盖测试之间的关系1. 判定覆盖法的基本思想是设计若干用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次,即判断真假值均曾被满足。2. 条件覆盖的基本思想是设计若干测试用例,执行被测程序以后,要使每个判断中每个条件的可能取值至少满足一次。3. 判定-条件覆盖是判定和条件覆盖设计方法的交集,即设计足够的测试用例,使得判断条件中的所有条件可能取值至少执行一次,同时,所有判断的可能结果至少执行一次。4. 条件组合覆盖的基本思想是设计足够的测试用例,使得判断中每个条件的所有可能至少出现一次,并且每个判断本身的判定结果也至少出现一次。 大致上:语句覆盖 -> 判定覆盖 -> 条件覆盖 -> 判定-条件覆盖 -> 条件组合覆盖 -> 路径覆盖覆盖之间的关系
  4. 路径覆盖:画出程序流图、控制流图、圈复杂度计算、确定基本路径 程序流图:程序流图 控制流图:控制流图圈复杂度V(G)计算:- 区域数量(由节点、连线包围的区域,包括图形外部区域)- 连线数量 - 节点数量 + 2- 简单可预测节点(判断节点)数量 + 1
  5. 哪些用例设计技术适用于黑盒和白盒 黑盒:等价类划分法、边界值分析法、判定表方法、因果图法、正交试验法、功能图法、错误推测法 白盒:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和基本路径覆盖

Ch4 软件测试流程和规范

  1. V模型和W模型之间的关系W模型W模型由两个V字型模型组成,分别代表测试与开发过程,图中明确表示出了测试与开发的并行关系,测试伴随着整个软件开发周期,而且测试的对象不仅是程序,还包括需求定义文档、设计文档等,这和上面所扩展的V模型有相同的内涵。
  2. TPI模型具体内容TPI模型1. TPI模型考虑了测试过程的各个方面,如测试工具的使用,设计技术或报告,这些方面被称为关键域2. 为了了解过程在每个关键域所处的状态,即对关键域的评估结果,通过级别来体现3. 为了能客观地决定各个关键域的级别,TPI模型提供了一种度量工具——检查点。每个级别都有若干个检查点,测试过程只有在满足了这些检查点的要求之后,才意味着它达到了特定的级别4. 检查点帮助我们发现测试过程中的问题,而建议会帮助我们解决问题,最终改进测试过程。建议不仅包含对如何达到下个级别的指导,而且还包括一些具体的操作技巧、注意事项等。

Ch5 单元测试与集成测试

  1. 单元测试主要内容 - 单元测试是对软件基本的组成单元进行独立的测试。- 单元测试和编码是同步进行,但在TDD中,强调测试在先,编码在后。单元测试一般由开发人员完成,QA人员辅助。- 单元表现为:一个对象/类/函数/模块/组件
  2. 集成测试基本方法、关注要点 两种模式: - 非渐增式测试模式:先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序,如大棒模式。- 渐增式测试模式:把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。- 比较:渐增模式工作量大于非渐增模式;渐增模式发现错误比非渐增模式早;渐增模式易于诊断错误位置;渐增模式测试更彻底;渐增模式测试时间长;非渐增模式可并行测试

Ch6 系统测试

  1. 功能测试的依据 实现产品规格说明书上所要求的功能,特别需要模拟用户完成从头到尾(End-to-End,端到端)的业务测试,确保系统可以完成事先设计的功能,满足用户的实际业务需求。
  2. 不同阶段测试的特点 详见 软件测试的分类_CSDN
  3. 非功能性测试的内容 压力测试、容量测试、性能测试、安全性测试、容错性测试、兼容性测试、可靠性测试

Ch7 验收测试

  1. 验收测试的特点 验收测试是在软件产品完成了系统功能和非功能测试之后、产品发布之前所进行的软件测试活动,它是技术测试的最后一个阶段,也称为交付测试。进行验收测试的前提是系统或软件产品已通过了系统测试。
  2. 验收测试的对象 验收测试主要包括易用性测试、兼容性测试、安装测试、代码文档(如用户手册、操作手册等)测试等几个方面的内容。
  3. UI测试关键点、与设计之间的关系 用户界面的7个要素:符合标准和规范、直观性、一致性、灵活性、舒适性、正确性、实用性

Ch10 测试需求分析与测试计划

  1. 测试需求分析的内容 确定测试范围,测试项和测试子项,测试优先级,测试风险
  2. 编制测试计划的作用、目的 软件测试计划是指导测试过程的纲领性文件,描述测试活动的范围、方法、策略、资源、任务安排和进度等,并确定测试项、哪些功能特性将被测试、哪些功能特性将无需测试,识别测试过程中的风险。软件测试计划内容主要集中在测试目标和需求说明、测试工作量估算、测试策略、测试资源配置、进度表、测试风险等
  3. 开展测试的停止条件 满足某个阶段结束/里程碑达到的事先定义的要求。对于非严格系统可以采用“基于测试用例”的准则,对于严格系统,应当补充“基于缺陷密度”的规则

Ch13 测试执行与缺陷报告、跟踪

  1. 缺陷描述包含的内容和信息有哪些 1. 步骤:提供了如何重复当前缺陷的准确描述,应简明而完备、清楚而准确。这些信息对开发人员是关键的,视为修复缺陷的向导2. 期望结果:与测试用例标准或设计规格说明书或用户需求等一致,达到软件预期的功能。是验证缺陷的依据。3. 实际结果:实际执行测试的结果,不同于期望结果,从而确认缺陷的存在4. 软件缺陷相关的信息包括软件缺陷的图片、记录信息和如何再现和分离软件缺陷,使开发人员和其他的测试人员更容易分离和重现它。

本文转载自: https://blog.csdn.net/weixin_46222644/article/details/125391184
版权归原作者 SambacFeng 所有, 如有侵权,请联系我们删除。

“软件测试知识梳理与期末复习”的评论:

还没有评论