测试基础知识总结

一 软件产品质量模型

软件产品质量模型,将一个软件产品需要满足的质量划分为六大属性,每类属性又细化分了很多“子属性”
功能性:软件产品在指定条件下,提供满足明确和隐含要求的功能的能力
可靠性:设备最好不要出故障,如果有故障不会影响着主体业务,如果影响了主要功能和业务,也可以尽快定位和恢复
易用性:易懂、易学、易用、漂亮好看
效率:即所说的产品性能,指在规定的条件下,相对于所用资源的数量,软件产品可提供适当的性能的能力


image.png

二 测试类型

测试类型值测试需要考虑的不同角度
常见的测试类型及与其质量属性关系表


image.png

三 测试方法

3.1产品测试车轮图

软件测试者要从哪些方面用哪些方法测试产品的关系图
车轮图中能够分析出产品测试的两个关键问题:
1.如何保证测试验证全面性的问题
2.如何确定测试“深度”的问题
来源网络


image.png

3.2 常用测试设计方法

image.png

四 测试设计技术

4.1 测试点不等于测试用例

测试点:测试者在测试时需要关注的地方
测试用例:在测试点“加工”的基础上得到的

4.2 四步测试设计法

将测试点加工为测试用例,就叫测试设计,使用的方法就叫做测试设计方法
常用的测试设计法:路径分析法、判定表、正交分析法、等价类、边界值等测试设计法
第一步:建模
1.流程类:可使用流程图建立测试模型(路径分析法)
2.参数类:根据输入输出表建立测试模型
3.数据类:通过“等价类分析表”来建立测试模型
4.组合类:通过“因子表”建立测试模型
第二步:设计基础测试用例
只是基础的测试用例,不一定,主要关系对模型的覆盖
第三步:补充测试数据
第四步:扩展
1.路径分析法
通过绘制业务流程来建模:路径是指完成一个功能用户所执行的步骤,即通过程序代码的一条运行轨迹,常使用的方法如下:
语句覆盖:覆盖系统中所有判定和过程的最小路径集合
分支覆盖:覆盖系统中每个判定的所有分治所需的最小路径数,使得程序中的每一个判断的取真分支和取假分支至少经历一次,即判断真假值均曾被满足
全覆盖:100%覆盖系统所有可能的路径的集合;使所有可能的条件取值组合至少执行一次
最小线性无关覆盖:最小路径组合,减少重复测试执行的路径片段
2.参数类测试设计:输入输出表分析法
测试步骤:建模>>设计测试用例>补充测试数据>扩展

image.png

3.数据类测试设计:等价类和边界值分析法
测试步骤:建模>>设计测试用例>补充测试数据>扩展
● 等价类是指对输入值按照测试效果进行划分,将测试效果相同的测试数据归为一类,然后在测试时只需在每一类中选择一些测试样本来进行测试,而无需测试所有的值
● 边界值是参数在输入边界上的取值
image.png

4.组合类测试设计:正交分析法
测试步骤:建模>>设计测试用例>补充测试数据>扩展
因子表是一张分析测试点需要考虑哪方面,并且这些方面需要包含哪些内容的表
image.png

有时候,因子之间会存在一定的约束关系,例如因子A取值A1的时候,因子B只能取值B1,这时我们需要将其拆开,建立两张因子表
image.png

4.3 其他测试参考

1.控制用例粒度:测试点的组合和拆分
用例粒度越细,测试越准确和全面,但是太细的粒度会增加测试的场景和测试成本
2.策略覆盖
有些场景没有必要做正交测试,测试点对其他功能项影响微小
可以考虑将测试项或因子的取值,分配到其他测试用例中,作为其他测试用例的测试数据输入或测试条件
3.错误推断测试法
基于经验的一种测试方法,即根据经验来判断产品在哪些地方容易出现问题,然后针对这些地方来涉及测试用例

4.4 自动化测试

4.5.1 需要了解的真相

1.自动化测试不廉价,相反,自动化很贵
2.自动化脚本往往没有想想中那么可靠
3.自动化测试不是单靠测试就能搞定的事儿

4.5.2 自动化收益评估指标

image.png

你可能感兴趣的:(测试基础知识总结)