2019夏令营软件设计(四):软件测试概述
测试步骤
大型软件的测试基本上由下述几个步骤组成
- 模块测试
- 子系统测试
- 系统测试
- 验收测试
- 平行测试
测试阶段的信息流
单元测试
单元测试与编码属于同一生命周期的一个阶段。
主要采用白盒测试技术。
由编码人员自己进行测试。
多个模块可以并行测试。
测试重点:
- 模块接口
- 局部数据结构
- 重要的执行通路
- 出错处理通路
- 影响上述各方面特性的边界条件
白盒测试技术
白盒测试:按照程序内部的逻辑测试程序。检查程序中的每条通路是否都能按照预定要求正常工作。这种测试完全了解程序的结构和处理过程。因此,白盒测试又称为结构测试或逻辑测试。
白盒测试主要是对程序模块进行如下检查:
- 对程序模块的所有独立的执行路径至少测试一次。
- 对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次。
- 在循环的边界和运行界限内执行循环体。
- 测试内部的数据结构的有效性。
白盒测试——逻辑覆盖测试 五种标准
发现错误的能力 | 标准 | 含义 | 测试用例满足的条件 |
---|---|---|---|
1(弱) | 语句覆盖 | 每条语句至少执行一次 | A^B=T |
2 | 判断覆盖 | 每一判断的每个分支至少执行一次 | A^B=T A^B=F |
3 | 条件覆盖 | 每一判定中的每个条件,分别按“真”、“假”至少各执行一次 | A=T A=F B=T B=F |
4 | 判定/条件覆盖 | 同时满足判定覆盖和条件覆盖的要求 | A^B=T A^B=F A=T A=F B=T B=F |
5(强) | 条件组合覆盖 | 求出判定中所有条件的各种可能组合值,每一可能的条件组合至少执行一次 | A=T ^ B=T A=T ^ B=F A=F ^ B=T A=F ^ B=F |