目录
一、变异测试背景
为什么要进行变异测试?
✔️ 分析一组测试用例是否足以确保产品满足质量要求,即:检查一组测试用例准备好不好,发现测试用例/测试数据的弱点。针对微小的程序变化,良好的测试用例/测试数据将能够检测到代码中的缺陷或错误。
✔️ 若已有测试用例不能杀除所有非等价变异体,则需要额外设计新的测试用例,并添加到测试用例集中,以提高测试充分性。
✔️一些小的差错,无论经过多少产品、开发、测试、架构评审,往往是测试用例无法覆盖到的。这正是变异测试的用武之地。
✔️ 一种白盒测试方法
二、变异和变体
三、一阶变体、高阶变体
四、强变异检测、弱变异检测
五、用变异技术进行测试评价
六、变异测试例子
利用变异技术对测试集进行充分性评价的过程
七、变异算子
定义了从原有程序生成差别极小程序(即变体)的转换规则。1987年,奥佛特(Offutt)和金(King)针对FORTRAN77首次定义了22种变异算子
八、变异测试的基本原则
- 测试数据集还不够充分,所以变异体无法被杀死。
- 需要继续补充测试数据集用例