软件测试基础理论(总结)
1.  软件的三个要素:程序(实⾏特定功能的代码)  ⽂档(⽀持代码运⾏) 数据(⽀持程序运⾏⼀切有关)
2.  软件的产品质量 指的是? 1)质量是指实体特性的综合,表⽰实体满⾜ 明确的 或 隐含要求的能⼒。
3.  软件测试的⽬的:1)验证软件是否满⾜ 软件开发合同 或者项⽬开发计划,系统/⼦系统设计⽂档,软件需求规格说明,软件产品说明等规定的软件质量要求 2)通过测试,发现软件缺陷  3)为软件产品的质量测量和评价提供依据
4.  软件测试的标准4个过程,以及对应的解释  1)测试策划:只要是进⾏测试的需求分析 和 测试计划的编写 2)测试设计: 依据测试需求,分析并选⽤,已由的测试⽤例或者设计新的测试⽤例,在进⼊下⼀个阶段⼯作之前,应该通过,测试就绪评审 3)测试执⾏,执⾏测试⽤例,获取测试结果 分析并判定 设计结果  4)测试总结:整理和分析 测试数据 ,评价 测试效果和被测软件项,描述 测试状态 最后完成软件测试报告并通过测试评审
5.  测试⽤例设计的基本原则,1)基于测试需求的原则 2)基于测试⽅法的原则 3)兼顾 测试充分性 和 效率的原则 4)执⾏⽤例的可再现性原则
6.  什么是等价类划分法?
定义:等价类划分 是在 分析 需求规格说明 基础上,把程序的输⼊域 划分成 若⼲个部分,然后再每部分中选取 代表性数据 形成测试⽤例
步骤:a)划分有效等价类,对规格说明 是 有意义 合理的 输⼊数据 所构成的集合
b)划分⽆效等价类,对 规格说明 是 ⽆意义 不合理的 输⼊数据 所构成的集合
c) 为每⼀个等价类 定义⼀个唯⼀的编号
d)为每⼀个等价类 设计⼀组测试⽤例  确保 覆盖相应的等价类
6.什么是边界值分析法?
定义:边界值分析法 是针对 边界值 进⾏测试的 使⽤ 等于 ⼤于 或者⼩于边界值的数据对程序进⾏测试的⽅法 就是边界值分析法。
步骤:a)通过分析 规格说明 出 所有 可能的 边界条件
b) 对每⼀个边界条件 给出 满⾜ 和 不满⾜的输⼊数据
c) 设计相应的 测试⽤例
对于满⾜边界值的 输⼊ 可以发现 计算差错,对不满⾜的输⼊ 可以发现 域差错
7. 软件的内部质量 ,可以从哪六⼤特性进⾏解释?
六⼤特性:
功能性:当软件在指定条件下使⽤时,软件产品 提供 满⾜ 明确的和隐含的能⼒,包括适合性,准确性,互操作性,安全保密性,依从性
可靠性:在指定条件下使⽤时 软件产品维持规定的性能级别的能⼒;包括,成熟性,容错性,易恢复性,依从性
易⽤性:在指定条件下使⽤ 软件产品被理解被学习 使⽤和 吸引⽤户的能⼒  包括 易学性 易操作性 吸引性 依从性
效率性:在规定条件下 软件产品执⾏其功能时使⽤合适数量和类别资源的能⼒;包括 资源利⽤性 和效率依从性 、
维护性:软件产品 可以被修改的能⼒可能包括 纠正 改进 软件对环境 需求 和功能规格说明变化的适应 包括,易分析性,易改变性,稳定性,易测试性,依从性
可移植性:软件产品 从⼀种环境迁移到另外⼀种环境的能⼒,包括,适应性,易安装性,共存性,易替换性,可移植性的依从性。
8. 软件按照⽣命周期可以分为哪些测试? 单元测试,集成测试,配置项测试(也叫作软件合格性测试或确认测试),系统测试,验收测试。
回归测试可以分布在上述每个测试类别中,贯穿整个软件⽣命周期,所以单独分类描述,
9.每⼀个阶段测试基于的⽂档是什么? 单元测试:软件设计⽂档。 集成测试:软件结构设计⽂档。配置项测试:需求规格说明书(接⼝需求规格说明)。系统测试:⽤户需求(研制合同或系统需求)。验收测试:软件研制合同(⽤户需求或系统需求)
10.软件的准⼊和准出条件分别有哪些?
准⼊条件: 1)具有测试合同(或者项⽬计划)
2)具有软件测试所需各种⽂档
3)所提交的 被测软件受控
4)软件源代码 正确通过 汇编或者 编译
准出条件:结束软件测试 ⼯作⼀般 应该达到下⾯的要求
1)  已按要求 完成了合同(或项⽬计划)所规定的软件测试任务
2)  实际测试过程遵循了 原定的软件 测试计划 和软件测试说明
3)  客观 详细 地记录了 软件测试过程 和软件测试中发现的所有问题
4)  软件测试⽂档 齐全 符合规范
5)  软件测试的全过程 ⾃始⾄终 在控制下进⾏
6)  软件测试中 的 问题 或 异常 有合理的解释 或正确 有效的处理、
7)  软件测试⼯作 通过了测试评审
8)  全部测试软件,被测软件,测试⽀持软件,和评审结果 已经纳⼊配置管理
11.什么是静态测试 什么是动态测试?
1)静态测试:⼜称为静态分析结束,其基本特征是 不执⾏被测软件,根据检查列表,对需求分析说明书,软件设计说明书,源程序做结构检查,流程图分析等出软件错误,静态测试⼀般采⽤⼈⼯分析(针对⽂档),也可以⽤静态分析测试⼯具来进⾏(代码扫描)
2)动态测试:其基本特征是执⾏被测试程序。通过执⾏结果,分析软件可能出现的错误 ,⼀般由⼈⼯设计程序测试⽤例,也可以由测试⼯具做检查和分析。
12. 回归测试的⽬的是什么?
1) 测试软件变更之后,变更部分 的正确性 针对变更需求的 复合型
2)测试软件变更之后 软件原有的 正确的功能 性能和其他规定的要求的 不损害性。
13.什么是⿊盒测试,什么是⽩盒测试?
1)⿊盒测试:⼜称为功能测试,数据驱动测试,或者基于规格说明的测试,这种测试不必要了解 对象的内部逻辑结构,⽽是根据需求说明书中的功能来设计测试⽤例
2)⽩盒测试:⼜称,结构测试。逻辑测试或者基于程序的测试,这种测试 应了解软件程序的内部构造,并且根据内部构造 来设计测试⽤例。
⼀般单元测试采⽤⽩盒测试, 配置项或系统采⽤⿊盒测试。
14.软件调试和测试的区别?
调试:定位错误所在位置,并修改这些错误
测试:发现软件中的缺陷,提⾼软件质量
15.软件测试的4项基本准备活动。
1)软件环境的准备(⼲净 纯净的操作系统)
2)软件的安卓不熟(服务器操作 Linux操作数据库,jeeweb环境,tomcat 环境IIS )
3)测试数据的准备
4)业务操作流程。
16. 什么是基线? 已经正式通过审核批准的软件阶段性产品,是⼀个阶段性的开发版本,是⼀个具有⾥程碑意义的阶段性版本,此版本,可以作为 下⼀步 开发的基础。
17.持续的集成测试
1)对每⼀个 即将成为极限的版本 灰盒测试,
2)今早和不断的进⾏软件测试
18.冒烟测试:段时间内 针对某个模块【刚新增的模块 或者刚刚修改完的模块】开展某个专项测试(功能测试),
19.回归测试:长时间,针对某个指定的版本【刚新增的模块 以及与他相关的其他模块,进⾏专项的测试活动】
20.软件测试
⼀:功能测试基本理论
1.          测试需求:测试的规格说明书,主要作⽤是定义待测试的模块 和 功能模块的测试要点
2.          测试计划:测试过程中的纲领性⽂件,对测试活动中的测试环境,测试⽅法,测试时间⼈员安排。
3.          测试⽤例:是测试需求的细化,是⼀元素的集合,主要包含,⽤例编号,操作步骤/测试数据,预期结果,实际结果,判定,覆盖需求。
4.          缺陷报告:将软件的实际情况 和 测试⽤例的预期结果相⽐较,记录问题报告单。
5.          测试的基本过程:四个过程,测试策划,测试设计,测试执⾏,测试总结
6.          测试所需要的⽂档:测试需求,测试计划,测试⽤例,缺陷报告,测试报告(可能编写)
7.          软件测试的定义:官⽅定义:是在规定的条件下,对软件程序进⾏操作,以发现其中的错误为⽬的,对软件质量进⾏评估,从⽽提⾼软件质量。⽼师给的测试定义:是在未知软件,程序模块,某个版本是否有错误的情况下,从客户的⾓度出发,依据需求规格说明书等⽂档,选择科学的⽅法,设计出正确的业务操作流程,尽可能多的模拟⽤户对软件的各种操作,尽可能多的发现软件中的缺陷,并且将缺陷记录报告,提交给相关开发⼈员修复,最终达到提⾼软件质量的⽬的。
8.          测试跟调试的区别:测试,发现 软件那个的缺陷,提⾼软件质量;调试,定位程序中间已经发现的错误所在位置,并修改这些错误。
9.          软件测试⼯作开展之前有思想基本准备活动:测试环境的准备(保证⼲净,纯净的⼀个测试环境);完成软件的安装和部署;准备测试数据;业务操作流程的熟悉。
10.      什么叫做基线:已经正式通过审核批准的软件阶段性产品,是⼀个阶段性的开发版本,是⼀个具有⾥程碑意义的阶段性版本,此基线版本,可以作为下⼀步 开发的基础,
11.      什么叫持续集成测试:对每⼀个即将成为基线的版本都要进⾏灰盒测试,尽早和不断的进⾏软件测试
12.      敏捷测试:只有项⽬组和开发的过程,采⽤敏捷开发,什么时候采⽤敏捷测试?开发⼈员编写的需求规格说明书的阶段,采⽤敏捷测试,第⼀从客户的沟通中获得⽂字客户的需求,第⼆基于需求 开发静态页⾯原型,改动成本⼩,容易,直观体现需求,第三测试⼈员在这个阶段,对开发需求进⾏需求评审。
持续集成的概念13.      什么是冒烟测试:短时间内针对指定的 刚刚新增的 或者刚刚修改完Bug的模块,进⾏某个专项测试
14.      什么是回归测试:长时间,针对某个指定的模块,刚刚修改完bug的模块,以及与之相关的模块 是否公⽤⼀张数据库表,进⾏专项的测试活动。
15.      对于输⼊框 填写需求时,要注意那些收集需求⽅式?类型  长度和范围  特殊于要对,对于按钮,要特别注意当前模块的变化,以及相关性
16.      对于测试前提:第⼀是程序版本编号,第⼆是程序⽂档,如果没有程序⽂档,可以尽量使⽤,已有⽂档,⽤户⼿册,还有跟客户或者开发进⾏有效的沟通,或者根据常识,或者同类型软件,界⾯提⽰信息,第三,是测试数据的准备和还原
17.      浏览器的兼容性分为哪⼆个部分:⾸先在不同的浏览器中,页⾯内容的显⽰兼容,针对质量特性的 易吸引特性 展⽰专项 针对⾮功能特性,测试需求和测试⽤例的编写,其次是在不⽤的浏览器中,页⾯功能操作的兼容,针对质量特性 适合性 易操作 容错性,测试需求和测试⽤例的编写。
18.      软件测试按照技术划分:1)⿊盒;⿊盒测试,⼜称功能测试,或者数据驱动测试 或 给予规格说明书的测试,这种测试,不必了解程序的内部情况代码,⽽是依靠需求规格说明书中的功能 来设计测试⽤例 2)⽩盒;⽩盒测试,是⼀种基于代码的测试,是⼀种测试⽤例的设计⽅法,已知软件内部⼯作过程,通过测试证明内部操作是否符合设计规格要求,他通过检查软件内部的逻辑结构,对软件中的逻辑路径进⾏覆盖测试,在程序不同的地⽅设⽴检查点,检查程序运⾏状态是否⼀致。3)灰盒;敏捷的思想,持续集成,多次迭代,⽐如⽩盒的静态扫描,和⿊盒的动态⽤例设计
19.      软件测试按照阶段划分:单元测试;集成测试;系统测试,确认测试(软件合格性测试和配
置项测试);系统测试,验收测试。
20.      软件测试按照⽅法划分:静态测试,动态测试
21.      软件测试按照特性划分:GUI界⾯测试(易⽤性),兼容测试,帮助⽂档测试,性能⽅⾯,负载测试,压⼒测试。
22.      软件测试的模型(指导测试实施⼯作流程)
23.      软件测试模型v模型:细化测试活动,测试最⼀阶段
24.      软件测试模型w模型:细化测试活动,测试⼯作前⾯,尽早测试
25.      软件测试模型螺旋模型:细化测试活动,测试⼯作前移,尽早测试,每⼀个模块开发都是⼀个迭代的过程,客户评估,强调⽤户的参与 沟通
26.      软件测试模型H模型:弱化⽂档,灵活,每⼀个模块开发测试灵活,测试准备(不分先后),测试执⾏,达到测试就绪点,⽤例执⾏时,可以修改。测试计划在软件测试活动开展,也可以修改
27.      ⿊盒测试 需求收集 和 ⽤例编写 需要关注那些地⽅?“输⼊”
防⽌输⼊⾮法数据;从需求的收集和⽤例的设计;长度或范围 类型和特殊要求“点击”业务功能的实现;从需求收集和⽤例设计【预期结果】;当前模块 相关性。
28.      ⿊盒测试:功能模块增删改查
“添加模块”表单的内容,输⼊元素的value固定(默认) valu随机(长度 类型 要求)点击元素,当前模块 相关性
“修改模块”先查询 后更改(添加要求)2个步骤
“删除模块”选择数据和 点击删除,1)是否有删除提⽰ 2)删除参考6个⽤例
“查询模块”1)是否能够根据查询条件 准确的到 待查询的内容 2)长度 少 不关注 3)类型 ⾮数字,数字,时间(bug) 4)特殊要求 特殊字符,5)正交法 ⽤例个数固定
29.      什么是好的测试⽤例?⾸先 编写依据 基于需求 基于⽅法 兼顾效率 体现再现性,然后,此⽤例能够帮助发现新的bug
30.      测试过程管理⼯具相⽐与硬盘保护有什么优点?web页⾯ 表单填写数据库保存,⽅便进⾏内容保存 收集,统计,资源共享,此类管理⼯具很多,QC/TD(名⽓⼤),bugfreee,禅道,或者企业⾃⼰开发。
31.      Bug的分类有哪些,
1)By design 设计本如此
2)Duplicat 重复提交的Bug
3)Not  Repro ⽆法重现的bug 称为三种⽆效Bug .
a)Externa,因为外部因素导致的问题(浏览器 操作系统, 第三⽅)
b)Fixed 问题已修改
c)Postponed, 延迟处理 后续版本
d)won’t fix  是个Bug  太过于细⼩ 不值得修改。称为四种有效bug

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。