lsekfe 发表于 2023-2-20 11:38:10

单元测试的基础框架和测试的8个面分享

基本框架
http://www.51testing.com/attachments/2023/02/15326880_2023021615000219qtG.png
  驱动模块可理解为被测单元的主程序,用于模拟被测单元的上层模块。驱动模块能够设置测试数据、参数、环境变量等,调用被测单元、将数据传递给被测单元、检测被测单元的输出结果。
  测试桩模块也叫成根模块,用于模拟被测单元调用的子模块。接受被测单元的调用,并返回结果给被测单元,测试桩模块不需要模拟子模块的全部功能,能够模拟被测单元的调用需求,使被测单元在被调用时不出现错误即可。
  主要内容
  单元测试的主要内容包括8个方面。
http://www.51testing.com/attachments/2023/02/15326880_202302161500041Qq9x.png
  1、算法逻辑 在进行单元测试时,首先要检测被测模块的算法及其内部各处理逻辑的正确性。
http://www.51testing.com/attachments/2023/02/15326880_202302161500071QJy4.png
  2、模块接口 只被测模块和被被测模块调用模块的参数与返回值(个数,次序,类型)。对于具有多态的方法要着重检查。被调模块的返回值在必要的时候可以进行插桩检查。
http://www.51testing.com/attachments/2023/02/15326880_202302161500091FXuz.png
  3、数据结构 检查全局和局部数据结构的定义是否正确实现和使用。
http://www.51testing.com/attachments/2023/02/15326880_2023021615001210fYk.png
  其实感觉模块接口的例子也可以放到数据结构这里。
  4、边界条件 需求的边界范围和变量自身类型的范围。
http://www.51testing.com/attachments/2023/02/15326880_202302161500151zpPA.png
  5、独立路径 针对遗漏/未正确实现的处理逻辑,处理逻辑遗漏导致独立路径缺失。
http://www.51testing.com/attachments/2023/02/15326880_2023021615001710ui0.png
  6、错误处理 检查被测模块中是否包含正确的错误处理代码,避免程序出现错误或异常时直接崩溃。
http://www.51testing.com/attachments/2023/02/15326880_202302161500201pU5V.png
  什么是无效的错误处理?存在3种情况:
  ①错误描述难以理解,不能够对错误定位提供有效帮助;
  ②错误描述与实际不符;
  ③错误处理不正确或者滞后。
  7、输入数据 检查输入数据的正确、规范、合理与否。
http://www.51testing.com/attachments/2023/02/15326880_20230216150022170hW.png
  8、表达式与SQL语句 特别需要注意运算符优先级。

页: [1]
查看完整版本: 单元测试的基础框架和测试的8个面分享