一些测试相关的小知识点(二)

白盒测试

关注被测单元的内部结构和程序逻辑

白盒测试方法

1、语句覆盖

每条语句至少执行一次

2、判定覆盖

每个判定的每个分支至少执行一次

3、条件覆盖

每个判定的每个条件应取到各种可能的值

4、判定-条件覆盖

同时满足判定覆盖条件覆盖

5、条件-组合覆盖

判断条件中的所有可能至少出现一次,并且每个判断本身的判断结果也至少出现一次

6、路径覆盖

覆盖程序中的所有可能的执行路径

7、基本路径覆盖

  1. 程序的流程控制图
  2. 计算程序环路复杂度    V(G) = 边界数目 - 节点数目 + 2
  3. 确定基本路径

黑盒测试

完全不考虑程序内部结构和内部特性,直接对软件进行测试

黑盒测试方法

1、等价类划分法

将要输入的数据域,分为几部分,然后从每个部分选取少量代表性数据进行测试,等价类分为有效等价类和无效等价类

2、边界值分析法

取输入条件边界上的值,进行测试

3、判定表分析法

分析和表达多种输入条件下系统执行不同动作的工具

4、因果图法

描述系统输入输出之间的因果关系

5、正交实验法

从大量的试验点中挑选出适量的、有代表性的点,从而安排实验

6、功能图法

使用功能图形式化地表示程序的功能说明

7、场景法

运用场景来对系统的功能点或业务流程的描述

8、错误推测法

根据自己的工作经验和直觉推测出程序可能出现的错误,从而进行针对测试

静态测试法和动态测试法

1、静态测试

程序不运行,人工进行代码检查、静态结构分析、代码质量度量、(需求规格说明书的复审)文档测试

2、动态测试

执行代码,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等

回归测试

对修复的缺陷进行重新测试,对软件的新版本或新功能进行测试

α测试:用户在开发者的场所来进行的,在一个受控的环境中进行

β测试:软件的最终用户在一个或多个用户场所来进行的,开发者通常不在现场,用户记录测试中遇到的问题并报告给开发者,开发者对系统进行最后的修改,并开始准备发布最终的软件

自动化测试和手工测试的优缺点

手工测试缺点:

  1. 大量重复的手工测试,代价昂贵、容易出错
  2. 过于依赖于测试人员的能力

手工测试优点:

  1. 测试人员具有经验和对错误的猜测能力
  2. 测试人员具有对软件的审美能力
  3. 测试人员具有是非判断和逻辑推理能力

自动化测试的缺点:

  1. 不能取代手工测试
  2. 手工测试比自动测试发现的缺陷更多
  3. 测试自动化不能提高有效性

自动化测试的优点:

  1. 可以执行一些手工测试困难或不可能进行的测试,如,大量用户的测试
  2. 增加软件信任度
  3. 更方便的对程序进行回归测试
  4. 短时间可以运行更多更繁琐的测试
  5. 更好地利用资源

你可能感兴趣的:(白盒测试,黑盒测试,手工与自动化,测试)