16-软件测试
测试替身
测试替身:在测试中使用的对象,替代真实对象,减少测试的复杂性
Stub:模仿下层模块,在测试时响应上层请求,为上层方法提供假数据
Driver:模仿上层模块,为下层方法提供模拟环境
Mock:模仿下层模块测试上层,相较于 Stub 还需要验证上层方法的调用行为
常见测试方法
黑盒测试:将测试对象作为一个黑盒子,完全基于输入和输出数据判断测试对象的正确性。
等价类划分:将输入数据划分为有效和无效等价类,测试每个类的代表值
边界值分析:测试输入数据的边界值,通常是有效等价类的边界
决策表测试:四个象限,条件声明-条件选项;行动声明-行动选项
状态转换测试:基于系统状态的变化,设计测试用例
白盒测试:按照对象内部的逻辑结构进行测试,关注代码的执行路径和分支。
语句覆盖:确保每个可执行语句至少被执行一次
分支覆盖:确保每个分支(if-else)至少被执行一次
路径覆盖:确保每条可能的执行路径都被测试
衡量圈复杂度
画出流程图,节点数为 ,边数为 ,圈复杂度:
也可通过
ifwhilefor等分支语句的数量 +1 来计算
JUNIT 基本语法
最后更新于