Redbattle
踩坑
环境
项目
配置
知识点
踩坑
环境
项目
配置
知识点
  • 项目礼仪(Worktile版本)
  • Git 常用命令
  • 单元测试
    • Github Pages 前端自动化部署
    • 前端开发规范
    • 创建VUE项目
    • project
    2021-09-22

    单元测试

    (大部分根据网文整理)

    # 目的

    • 提高代码完整性
    • 便于代码维护

    # 相关概念

    • 单元测试:
      • 通过代码检验各个函数和方法的输入输出是否正确执行。

    # 使用

    特性

    • 测试过程自动执行,使用assert来验证,执行结果输出到文档。
    • 单元测试相互独立,用例之间绝不能互相调用,也不能依赖执行的先后次序。
    • 测试粒度足够小,有助于精确定位问题;单元测试粒度至多是类级别,一般是方法级别;单元测试不负责检查跨类或者跨系统的交互逻辑。
    • 核心业务、核心应用、核心模块的增量代码务必确保单元测试通过;新增代码及时修正单元测试。
    • 单元测试代码必须写在特定的test工程目录中,不允许写在业务代码目录下。

    遵守原则

    • 边界值测试,包括循环边界、特殊取值、特殊时间点、数据顺序等。
    • 正确的输入,并得到预期的结果。
    • 与设计文档相结合,来编写单元测试。
    • 强制错误信息输入(如:非法数据、异常流程、非业务允许输入等),并得到预期的结果。
    • 对于数据库相关的查询,更新,删除等操作,不能假设数据库里的数据是存在的,或者直接操作数据库把数据插入进去,请使用程序插入或者导入数据的方式来准备数据;避免导致测试结果异常。
    • 和数据库相关的单元测试,可以设定自动回滚机制,不给数据库造成脏数据;或者对单元测试产生的数据有明确的前后缀标识。

    优点

    • 单元测试能够最大限度地规避线上故障。

    缺点

    • 单元测试代码需要维护,更改业务代码都需要调整相应的单元测试代码。

    # 参考文献

    • 阿里Java开发手册-单元测试 (opens new window)
    • PHP之道-测试驱动开发 (opens new window)
    #单元测试
    最近更新
    01
    烧虾球
    05-13
    02
    二次开发
    12-20
    03
    文字展开收起
    10-17
    更多文章>
    Theme by Vdoing
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式