功能测试
按照是否覆盖源代码
- 黑盒测试(输入和输出)
- 白盒测试(代码内部实现逻辑)
- 灰盒测试(输入输出和代码逻辑)
介于白盒测试和黑盒测试之间的测试,多用于集成阶段,不仅关注输入输出,也关注程序内部情况。
按照测试阶段划分
- 单元测试(是对软件中最小可测单元进行检查和验证)
- 集成测试(重点测试不同模块的接口部分)
- 系统测试(将系统看成一个整体进行测试)
- 验收测试(检验软件是否符合用户需求的测试)
- a测试:内测版本,bug多
- β测试:公测版本
- γ测试:候选发布版本
按照是否运行
- 静态测试(测文档)
- 动态测试(运行中的程序)
其他
冒烟测试:开发提交测试版本的接收性测试
回归测试:bug回归,旧功能回归
随机测试:
探索测试:
瀑布模型
只关注当前进行的阶段
不响应需求变化
适合需求清晰的大型项目
测试用例
一个为了特定的目的(检验开发的代码实现是否满足用户的需求),而设计的文档。
判断:长度、类型、是否为空、是否重复、不满足需求
当有多个测试输入条件时,务必确保只有一个不满足条件(错误),测试异常情况。
边界值
概念:基于边界值【有效等价类和无效等价类的分界点】设计测试用例的一种【黑盒】方法
上点:边界之上的点
内点:边界内的点
离点:离边界最近的左右两点
需求 | 数学表示 | 上点 | 内点 | 离点 | 精简5点 |
---|---|---|---|---|---|
标题长度>0且<=30 | (0,30] | 1,30 | 14 | 29,31,0,2 | 0,1,14,30,31 |
扩展: |
- 边界值的优化
判定表
条件1 | 条件2 | 结果 |
---|---|---|
欠费 | 关机 | 打不通 |
欠费 | 不关机 | 打不通 |
不欠费 | 关机 | 打不通 |
不欠费 | 不关机 | 打通 |
- 条件桩:所有输入条件,如欠费状态、关机状态
- 动作桩:所有可能的输出结果,如允许主被叫、不允许主被叫
- 条件项:单个条件的取值范围,一般都是有效等价类和无效等价类
-
- 字符:Y/N
-
- 数字:1/0
- 动作项:基于每一种条件的组合,得到确认的结果,如打不通
案例:订单状态
订单检查,如果金额大于500,又未过期,则发出批准单和提货单
若金额大于500,但过期了,则不发批准单和提货单
若金额小于500,则不论是否过期都发出批准单和提货单
在过期的情况下,不论金额大小,还需要发出通知单
缺陷定义
- 产品实现不满足用户需求
- 测试执行时,